๐Ÿง Linux

์Šค์™‘/zRAM

๊ฐœ์š”

์Šค์™‘์€ ๋ฌผ๋ฆฌ์  RAM ์šฉ๋Ÿ‰์ด ๋ถ€์กฑํ•  ๋•Œ, ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๋ฉ”๋ชจ๋ฆฌ ํŽ˜์ด์ง€๋ฅผ ๋””์Šคํฌ์— ์ž„์‹œ๋กœ ์ €์žฅํ•˜์—ฌ ์‹œ์Šคํ…œ์ด ๋” ๋งŽ์€ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๊ฐ€์ง„ ๊ฒƒ์ฒ˜๋Ÿผ ๋™์ž‘ํ•˜๊ฒŒ ํ•˜๋Š” ๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ ๊ธฐ๋ฒ•์ž…๋‹ˆ๋‹ค. ์ „ํ†ต์ ์ธ ์Šค์™‘์€ ๋””์Šคํฌ I/O๋ฅผ ๋™๋ฐ˜ํ•˜์—ฌ ์ง€์—ฐ์‹œ๊ฐ„๊ณผ SSD ๋งˆ๋ชจ๋ฅผ ์œ ๋ฐœํ•˜์ง€๋งŒ, zRAM์€ RAM ๋‚ด์— ์••์ถ• ๋ธ”๋ก ๋””๋ฐ”์ด์Šค๋ฅผ ๋งŒ๋“ค์–ด ๋””์Šคํฌ I/O ์—†์ด ์Šค์™‘์„ ์ฒ˜๋ฆฌํ•˜์—ฌ ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ํฌ๊ฒŒ ์™„ํ™”ํ•ฉ๋‹ˆ๋‹ค.

zRAM์€ Linux 3.14๋ถ€ํ„ฐ ๋ฉ”์ธ๋ผ์ธ์— ํฌํ•จ๋˜์–ด ๋ชจ๋ฐ”์ผ, ์ž„๋ฒ ๋””๋“œ, ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์—์„œ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋ฉฐ, Android์˜ RAM Plus, Samsung์˜ Extended RAM ๊ฐ™์€ ์ด๋ฆ„์œผ๋กœ ์ƒ์šฉํ™”๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋ณธ ๋ฌธ์„œ์—์„œ๋Š” ์Šค์™‘์˜ ๋™์ž‘ ์›๋ฆฌ, zRAM์˜ ๋‚ด๋ถ€ ๊ตฌ์กฐ์™€ ์„ค์ • ๋ฐฉ๋ฒ•, zswap๊ณผ์˜ ์ฐจ์ด, ๊ทธ๋ฆฌ๊ณ  ์šด์˜ ๊ด€์ ์—์„œ์˜ ์„ ํƒ ๊ธฐ์ค€์„ ๋ถ„์„ํ•ฉ๋‹ˆ๋‹ค.

์Šค์™‘/zRAM ์•„ํ‚คํ…์ฒ˜

๊ทธ๋ฆผ 1. ์Šค์™‘์—์„œ zRAM๊นŒ์ง€์˜ ๋ฉ”๋ชจ๋ฆฌ ๊ณ„์ธต๊ณผ ๋ฐ์ดํ„ฐ ํ๋ฆ„

ํ•ต์‹ฌ ๊ฐœ๋…

์Šค์™‘์˜ ๋™์ž‘ ์›๋ฆฌ

์Šค์™‘์€ ํŽ˜์ด์ง€ ๊ตํ™˜(page swapping)์„ ํ†ตํ•ด ๋ฌผ๋ฆฌ์  RAM์„ ์ดˆ๊ณผํ•˜๋Š” ๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ปค๋„์€ ์‚ฌ์šฉ ๋นˆ๋„๊ฐ€ ๋‚ฎ์€ ํŽ˜์ด์ง€๋ฅผ ๊ฐ์ง€ํ•˜๊ณ , ์ด๋ฅผ swap ๋””๋ฐ”์ด์Šค์— ๊ธฐ๋กํ•˜์—ฌ ํ•ด๋‹น RAM ์˜์—ญ์„ ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค์— ์žฌํ• ๋‹นํ•ฉ๋‹ˆ๋‹ค.

  • PTE(Page Table Entry): ๊ฐ ํ”„๋กœ์„ธ์Šค์˜ ์ฃผ์†Œ ๊ณต๊ฐ„์—์„œ ํŽ˜์ด์ง€์˜ ๋ฌผ๋ฆฌ์  ์œ„์น˜์™€ ์ƒํƒœ๋ฅผ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
  • Swap entry: PTE์—์„œ ์Šค์™‘ ์˜์—ญ์œผ๋กœ ๊ต์ฒด๋œ ํŽ˜์ด์ง€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํŠน๋ณ„ํ•œ ํ˜•์‹์ž…๋‹ˆ๋‹ค.
  • Swap cache: ์Šค์™‘ I/O ์ค‘๋ณต์„ ์ค„์ด๊ธฐ ์œ„ํ•œ ์ปค๋„ ๋‚ด ์บ์‹œ ๊ณ„์ธต์ž…๋‹ˆ๋‹ค.

zRAM ๊ตฌ์กฐ

zRAM์€ RAM ๋‚ด์—์„œ ์••์ถ• ๋ธ”๋ก ๋””๋ฐ”์ด์Šค๋ฅผ ๋™์ ์œผ๋กœ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์ด ๋””๋ฐ”์ด์Šค๋Š” /dev/zram<id>๋กœ ๋…ธ์ถœ๋˜๋ฉฐ, ์ผ๋ฐ˜ ๋ธ”๋ก ๋””๋ฐ”์ด์Šค์ฒ˜๋Ÿผ mkswap, swapon์œผ๋กœ ํ™œ์„ฑํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์••์ถ• ํ’€: RAM์— ํ• ๋‹น๋œ ์••์ถ• ๋ฐ์ดํ„ฐ ์ €์žฅ ์˜์—ญ์œผ๋กœ, on-demand๋กœ ํ• ๋‹น๋˜๊ณ  ํ•ด์ œ๋ฉ๋‹ˆ๋‹ค.
  • ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ: ๊ฐ ํŽ˜์ด์ง€์˜ ์••์ถ•๋œ ํฌ๊ธฐ์™€ ์ƒํƒœ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ํ…Œ์ด๋ธ”์ž…๋‹ˆ๋‹ค.
  • blk-mq ํ†ตํ•ฉ: Linux ๋ธ”๋ก ๋ ˆ์ด์–ด์˜ ๋ฉ€ํ‹ฐํ์™€ ํ†ตํ•ฉ๋˜์–ด ๋†’์€ ๋ณ‘๋ ฌ์„ฑ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • ์šด์˜ ํ†ต๊ณ„ ๋…ธ๋“œ: /sys/block/zram0/mm_stat, io_stat, bd_stat๋กœ ์••์ถ•๋ฅ , ์‹ค์ œ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰, writeback๋Ÿ‰์„ ๊ด€์ธกํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

zswap๊ณผ์˜ ์ฐจ์ด

zswap๊ณผ zRAM์€ ๋ชจ๋‘ RAM ๊ธฐ๋ฐ˜ ์••์ถ• swap์„ ์ง€์›ํ•˜์ง€๋งŒ, ์•„ํ‚คํ…์ฒ˜์™€ ์‚ฌ์šฉ ์‚ฌ๋ก€๊ฐ€ ๋‹ค๋ฆ…๋‹ˆ๋‹ค.

ํ•ญ๋ชฉ zRAM zswap
ํ˜•ํƒœ ๋…๋ฆฝ ๋ธ”๋ก ๋””๋ฐ”์ด์Šค ์ปค๋„ ๋‚ด ์บ์‹œ ๊ณ„์ธต
๋ฐฑ์—… ์Šคํ† ๋ฆฌ์ง€ ์„ ํƒ์  (writeback) ํ•„์ˆ˜ (๋ฐฑ์—… swap ์žฅ์น˜)
ํˆฌ๋ช…์„ฑ ์ˆ˜๋™ ์„ค์ • ํ•„์š” ์ž๋™ ๋™์ž‘
์ ํ•ฉ ํ™˜๊ฒฝ ๋ชจ๋ฐ”์ผ/์ž„๋ฒ ๋””๋“œ, swap ๋Œ€์ฒด ๋ฐ์Šคํฌํ†ฑ/์„œ๋ฒ„, swap I/O ๊ฐ์†Œ

๋น„๊ต/๋ถ„์„

์Šค์™‘ ๊ธฐ์ˆ  ๋น„๊ต

๊ธฐ์ˆ  ์••์ถ• ์—ฌ๋ถ€ ๋””์Šคํฌ I/O CPU ์˜ค๋ฒ„ํ—ค๋“œ ์ง€์—ฐ์‹œ๊ฐ„ ๋ฉ”๋ชจ๋ฆฌ ์ ˆ์•ฝ
๋””์Šคํฌ ์Šค์™‘ ์•„๋‹ˆ์˜ค ํ•„์ˆ˜ ๋‚ฎ์Œ 1~10ms ์—†์Œ
zRAM ์˜ˆ ์—†์Œ (๊ธฐ๋ณธ) ์ค‘๊ฐ„ 10~50ฮผs 2~5๋ฐฐ
zswap ์˜ˆ ์“ฐ๊ธฐ๋งŒ ์ค‘๊ฐ„ 10~100ฮผs 2~4๋ฐฐ
ํ•˜๋“œ์›จ์–ด ์••์ถ• ์˜ˆ ์—†์Œ ๊ฑฐ์˜ ์—†์Œ ~1ns 2~4๋ฐฐ

์••์ถ• ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋น„๊ต

์•Œ๊ณ ๋ฆฌ์ฆ˜ ์••์ถ•๋ฅ  ์†๋„ ํŠน์ง•
LZO-RLE ์ค‘๊ฐ„ ๋น ๋ฆ„ ๋ฐฐํฌํŒ ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ์ž์ฃผ ์„ ํƒ๋˜๋ฉฐ ์•ˆ์ •์ 
LZ4 ๋‚ฎ์Œ ๋งค์šฐ ๋น ๋ฆ„ ๋‚ฎ์€ ์ง€์—ฐ์‹œ๊ฐ„ ์š”๊ตฌ ์‹œ
ZSTD ๋†’์Œ ๋ณดํ†ต ์ตœ์ ์˜ ์••์ถ•๋ฅ /์†๋„ ๊ท ํ˜•
LZO ์ค‘๊ฐ„ ๋น ๋ฆ„ ๋ ˆ๊ฑฐ์‹œ ํ˜ธํ™˜
842 ๋‚ฎ์Œ ๋งค์šฐ ๋น ๋ฆ„ ํ•˜๋“œ์›จ์–ด ๊ฐ€์† ์ง€์› ์‹œ

๋™์ž‘ ์›๋ฆฌ

zRAM ๋ฐ์ดํ„ฐ ํ๋ฆ„

์“ฐ๊ธฐ ๊ฒฝ๋กœ:
  ํ”„๋กœ์„ธ์Šค ๋ฉ”๋ชจ๋ฆฌ โ†’ ์ปค๋„ swap โ†’ zRAM ์••์ถ• โ†’ ์••์ถ•๋œ RAM ํ’€

์ฝ๊ธฐ ๊ฒฝ๋กœ:
  ์••์ถ•๋œ RAM ํ’€ โ†’ zRAM ํ•ด์ œ โ†’ ํ”„๋กœ์„ธ์Šค ๋ฉ”๋ชจ๋ฆฌ ๋ณต์›

Writeback ๊ฒฝ๋กœ:
  ์••์ถ•๋œ RAM ํ’€ โ†’ ๋ฐฑ์—… ์Šคํ† ๋ฆฌ์ง€ (๋น„์••์ถ•์„ฑ/์•„์ด๋“ค ํŽ˜์ด์ง€)

zRAM ์„ค์ • ๋‹จ๊ณ„

  1. ๋ชจ๋“ˆ ๋กœ๋“œ: modprobe zram num_devices=N์œผ๋กœ zRAM ๋””๋ฐ”์ด์Šค๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
  2. ์••์ถ• ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์„ ํƒ: /sys/block/zram0/comp_algorithm์œผ๋กœ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
  3. ๋””์Šคํฌ ํฌ๊ธฐ ์„ค์ •: /sys/block/zram0/disksize์— ๋””์Šคํฌ ํฌ๊ธฐ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. RAM ํฌ๊ธฐ์˜ 2๋ฐฐ๋ฅผ ๋„˜๊ธฐ์ง€ ์•Š๋Š” ๊ฒƒ์ด ์ผ๋ฐ˜์ ์ž…๋‹ˆ๋‹ค.
  4. ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ: /sys/block/zram0/mem_limit์œผ๋กœ ์••์ถ• ๋ฐ์ดํ„ฐ์— ์‚ฌ์šฉํ•  ์ตœ๋Œ€ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ œํ•œํ•ฉ๋‹ˆ๋‹ค.
  5. ํ™œ์„ฑํ™”: mkswap /dev/zram0 && swapon /dev/zram0์œผ๋กœ ์Šค์™‘์œผ๋กœ ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.

์šด์˜ ์ค‘์—๋Š” mm_stat์˜ orig_data_size, compr_data_size, mem_used_total์„ ํ•จ๊ป˜ ๋ณด๋ฉด์„œ ์‹ค์ œ ์ ˆ๊ฐ๋ฅ ๊ณผ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ์˜ค๋ฒ„ํ—ค๋“œ๋ฅผ ํ™•์ธํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. bd_stat๋Š” writeback์ด ์‹ค์ œ๋กœ ์–ผ๋งˆ๋‚˜ ๋ฐœ์ƒํ–ˆ๋Š”์ง€ ๋ณด์—ฌ ์ฃผ๋ฏ€๋กœ, SSD ๋งˆ๋ชจ ๊ด€๋ฆฌ๊ฐ€ ํ•„์š”ํ•œ ํ™˜๊ฒฝ์—์„œ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

writeback ๋™์ž‘

CONFIG_ZRAM_WRITEBACK์ด ํ™œ์„ฑํ™”๋˜๋ฉด, zRAM์€ ๋น„์••์ถ•์„ฑ(huge) ํŽ˜์ด์ง€๋‚˜ ์•„์ด๋“ค(idle) ํŽ˜์ด์ง€๋ฅผ ๋ฐฑ์—… ์Šคํ† ๋ฆฌ์ง€์— ๊ธฐ๋กํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋•Œ backing_dev๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ disksize๋ฅผ ์„ค์ •ํ•˜๊ธฐ ์ „์— ์ค€๋น„ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

  • huge writeback: ์••์ถ•ํ•  ์ˆ˜ ์—†๋Š” ํŽ˜์ด์ง€๋ฅผ ๋ฐฑ์—… ์Šคํ† ๋ฆฌ์ง€์— ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค.
  • idle writeback: ์ ‘๊ทผ์ด ์—†๋Š” ์ฝœ๋“œ ํŽ˜์ด์ง€๋ฅผ ๋ฐฑ์—… ์Šคํ† ๋ฆฌ์ง€์— ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค.
  • writeback_limit: ์ผ์ผ writeback๋Ÿ‰์„ ์ œํ•œํ•˜์—ฌ SSD ๋งˆ๋ชจ๋ฅผ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

recompression ๋™์ž‘

CONFIG_ZRAM_MULTI_COMP๋Š” ์—ฌ๋Ÿฌ ์••์ถ• ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ์•Œ๊ณ ๋ฆฌ์ฆ˜ 1๊ฐœ์™€ ๋ณด์กฐ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์—ฌ๋Ÿฌ ๊ฐœ๋ฅผ ๋‘๊ณ , ๋ฉ”์ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ์••์ถ• ํšจ์œจ์ด ๋‚ฎ์€ ํŽ˜์ด์ง€๋ฅผ ๋” ๋†’์€ ์••์ถ•๋ฅ ์˜ ๋ณด์กฐ ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ๋‹ค์‹œ ์••์ถ•ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

1์ฐจ ์••์ถ• (๋น ๋ฆ„): LZ4๋กœ ์‹œ๋„
  โ†’ ์‹คํŒจ ์‹œ 2์ฐจ ์••์ถ• (๋†’์€ ์••์ถ•๋ฅ ): ZSTD๋กœ ์žฌ์••์ถ•
  โ†’ ์ฝœ๋“œ ํŽ˜์ด์ง€: ๋” ํšจ์œจ์ ์ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ์žฌ์••์ถ•ํ•˜์—ฌ ๋ฉ”๋ชจ๋ฆฌ ์ ˆ์•ฝ

์žฅ๋‹จ์ 

์žฅ์ 

  • ๋””์Šคํฌ I/O ์™„์ „ ์ œ๊ฑฐ๋กœ SSD ์ˆ˜๋ช… ์—ฐ์žฅ ๋ฐ ์‹œ์Šคํ…œ ์„ฑ๋Šฅ ํ–ฅ์ƒ
  • ๋ชจ๋ฐ”์ผ/์ž„๋ฒ ๋””๋“œ ํ™˜๊ฒฝ์—์„œ RAM ์šฉ๋Ÿ‰ ๊ฐ€์ƒ ํ™•์žฅ (์ตœ๋Œ€ 2~5๋ฐฐ)
  • ๋””์Šคํฌ ์Šค์™‘ ๋Œ€๋น„ ์ˆ˜๋ฐฑ ๋ฐฐ ๋น ๋ฅธ ์ง€์—ฐ์‹œ๊ฐ„ (ฮผs vs ms)
  • ์ปค๋„ ๋ชจ๋“ˆ ํ˜•ํƒœ๋กœ ์œ ์—ฐํ•œ ์„ค์ •๊ณผ ๊ด€๋ฆฌ ๊ฐ€๋Šฅ
  • writeback/recompression์œผ๋กœ ๋ฉ”๋ชจ๋ฆฌ ํšจ์œจ ์ตœ์ ํ™” ๊ฐ€๋Šฅ

๋‹จ์ 

  • CPU ์—ฐ์‚ฐ ์ž์›์„ ์†Œ๋ชจํ•˜์—ฌ ์••์ถ•/ํ•ด์ œ ์˜ค๋ฒ„ํ—ค๋“œ ๋ฐœ์ƒ
  • ๋น„์••์ถ•์„ฑ ๋ฐ์ดํ„ฐ(์ด๋ฏธ์ง€, ์•”ํ˜ธํ™” ๋ฐ์ดํ„ฐ)์—์„œ๋Š” ํšจ๊ณผ ๊ธ‰๊ฐ
  • ๋†’์€ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ ์‹œ ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ์ปค์งˆ ์ˆ˜ ์žˆ์Œ
  • ๊ธฐ๋ณธ ์„ค์ •๋งŒ์œผ๋กœ๋Š” ์ตœ์ ์ด ์•„๋‹ ์ˆ˜ ์žˆ์–ด ํŠœ๋‹ ํ•„์š”
  • zswap ๋Œ€๋น„ ์„ค์ • ๋ณต์žก๋„๊ฐ€ ๋†’์Œ

๊ด€๋ จ ๊ธฐ์ˆ 

์ฐธ๊ณ  ๋ฌธํ—Œ

  • Linux Kernel Documentation, "zram: Compressed RAM-based block devices", https://docs.kernel.org/admin-guide/blockdev/zram.html
  • Linux Kernel Documentation, "zswap โ€” Compressed swap cache", https://docs.kernel.org/admin-guide/mm/zswap.html
  • Nitin Gupta, "Compcache: in-memory compressed swapping", LWN.net, 2009
  • Jonathan Corbet, "Modernizing swapping: virtual swap spaces", LWN.net, 2026
  • Chris Down, "Debunking zswap and zram myths", chrisdown.name, 2026
  • Fedora Project, "Swap on zRAM default", Fedora 33+, 2020

๊ด€๋ จ ๋ฌธ์„œ

ํ•ต์‹ฌ ์ •๋ฆฌ

  1. zRAM์€ RAM ๋‚ด์— ์••์ถ• ๋ธ”๋ก ๋””๋ฐ”์ด์Šค๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ๋””์Šคํฌ I/O ์—†์ด ์Šค์™‘์„ ์ฒ˜๋ฆฌํ•˜๋Š” Linux ์ปค๋„ ๋ชจ๋“ˆ์ž…๋‹ˆ๋‹ค.
  2. LZO-RLE, LZ4, ZSTD ๊ฐ™์€ ์••์ถ• ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ์ง€์—ฐ์‹œ๊ฐ„๊ณผ ์••์ถ•๋ฅ ์˜ ๊ท ํ˜•์ ์ด ๋‹ฌ๋ผ ์›Œํฌ๋กœ๋“œ์— ๋งž์ถฐ ์„ ํƒํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  3. writeback์€ ๋น„์••์ถ•์„ฑ/์•„์ด๋“ค ํŽ˜์ด์ง€๋ฅผ ๋ฐฑ์—… ์Šคํ† ๋ฆฌ์ง€์— ๊ธฐ๋กํ•˜์—ฌ ๋ฉ”๋ชจ๋ฆฌ ํšจ์œจ์„ ๋†’์ด๋ฉฐ, writeback_limit์œผ๋กœ SSD ๋งˆ๋ชจ๋ฅผ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  4. recompression์€ ์ฝœ๋“œ ํŽ˜์ด์ง€๋ฅผ ๋” ํšจ์œจ์ ์ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ์žฌ์••์ถ•ํ•˜์—ฌ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰์„ ์ถ”๊ฐ€๋กœ ์ ˆ์•ฝํ•ฉ๋‹ˆ๋‹ค.
  5. ๋ชจ๋ฐ”์ผ/์ž„๋ฒ ๋””๋“œ ํ™˜๊ฒฝ์—์„œ๋Š” zRAM์ด ๋””์Šคํฌ ์Šค์™‘์˜ ์„ฑ๋Šฅ ๋ฌธ์ œ๋ฅผ ํฌ๊ฒŒ ์™„ํ™”ํ•˜๋ฉฐ, ์„œ๋ฒ„ ํ™˜๊ฒฝ์—์„œ๋Š” zswap๊ณผ ํ•จ๊ป˜ ์“ฐ๋Š” ์ •์ฑ…๋„ ์œ ํšจํ•ฉ๋‹ˆ๋‹ค.