https://lwn.net/Articles/518718/

F2FS(Flash-Friendly File System)는 삼성(김재극)에서 개발한 리눅스 파일 시스템입니다.
(윈도우는 아직 미지원.)
(김재극이란 분, 메일 계정도 그렇고 위키에서까지 언급하더군요. 찾아보니 너무 당연하게도 삼성전자 책임연구원.)
log structure 파일 시스템으로 기존 시스템의 snowball effect of wandering tree, high cleaning overhead 를 해결했다고합니다. (뭔 말이야...)

snowball effect of wandering tree
균등분할된 트리 형태의 인덱스 구조(inode tree? 로그구조파일시스템은 이 방식인듯)에서 특정 파일을 쓸 때, 트리 상의 상위 노드까지 재기록(갱신)이 발생한다는데 이걸 wandering tree 라고 하는 것 같음.
전체 경로 상의 잦은 갱신으로 쓰기 비용이 급격히 증가한다고 snowball effect 라고 한 것 같고...

high cleaning overhead
무효 페이지를 초기화해서 시스템에 반환하는 클리닝이란게 있는데, 여기에 필요한 오버헤드를 줄였다는 의미인듯.

전공 분야(컴공은 좀 알겠지요? 저는 전자라서.)도 아니라서 뭔 말인지 모르겠고, 그냥 그렇다고 합니다. -_-;;

F2FS는 낸드플래시 기반 저장장치에 최적화되어있다고 합니다.
오픈소스화했다고 하네요. (리눅스에 기증했다는 표현도 쓰더군요.)
마이크로소프트에 로얄티를 지불해야하는 exFAT의 대안이 될 것이라는 예상도 있네요.
리눅스 3.8 커널에 추가될 것이라고 합니다.
(
http://www.phoronix.com/scan.php?page=news_item&px=MTI1OTU)

http://lkml.indiana.edu/hypermail/linux/kernel/1210.2/00005.html
초기 테스트 결과입니다.

파일 시스템 : EXT4, NILFS2, F2FS
EXT4는 안드로이드 표준 파일시스템.
NILFS2는 NTT(일본)에서 개발한 로그구조파일시스템.

테스트 시스템

1) Desktop PC
Linux 3.6.1 (F2FS patched)
Intel i5-2500 @3.3GHz quad-core
8GB RAM
Transcend 16GB class 10 micro SD card

2) Galaxy-S3
Linux 3.0.15 (F2FS ported)
Android 4.0.4
DVFS turned off (절전기능이 I/O 성능에도 영향을 미치는듯. 데스크탑에나 있는건줄 알았는데...)
Transcend 16GB class 10 micro SD card



buffered write (순차)
약간 높습니다.

buffered write (랜덤)
1.6~2.5배 높습니다.

Write+fsync (순차)
2배 높습니다.

Write+fsync (랜덤)
1.5~2배 높습니다.

마운트 속도.
포맷 후 재부팅없이 마운트.
가장 느립니다.


메모리에 캐시된 데이터를 flush하기위해 재부팅한 후 마운트.
EXT4 보다는 여전히 느리지만 NILFS2보다 최대 85% 빠릅니다.

-
랜덤 성능이 좋네요.

NILFS2를 봤을 때 마운트 시간은 로그구조 파일시스템의 근본적인 한계때문인듯.
-



Posted by gamma0burst Trackback 0 : Comment 6

댓글을 달아 주세요

  1. addr | edit/del | reply 플리즈 2012.12.24 02:34 신고

    전원을 자주 켜고 끄는 탈착형 스마트폰 보다는 배터리 일체형 스마트폰에 어울릴 것 같네요. 뭐 개선이 안 되는 게 이상하겠지만.

    • addr | edit/del Favicon of https://gamma0burst.tistory.com BlogIcon gamma0burst 2012.12.24 16:38 신고

      사실 벤치성능보다는 안정성이 중요하지요.
      삼성이 FAT기반 RFS썼던 것도 그런 이유라고 하고...

  2. addr | edit/del | reply 맹자도 2013.03.05 09:38 신고

    흠 마운트시간이 너무 늘어난게 걸리는데 이게 실사용에 얼마나 영향을 주려나요. msec이면 1/1000초니까 단순 수치상으로는 크게 안늘어났지만. 부가 연산 시간도 같이 올라가서 진짜 마운트 시간이 몇십배가 되면 문제가 될거 같은데.

    • addr | edit/del Favicon of https://gamma0burst.tistory.com BlogIcon gamma0burst 2013.03.05 10:56 신고

      보통 재부팅하면 기본 몇초씩 걸리니까요.
      저장소 모드했다가 푸는 식으로 재마운트되도 몇초씩 걸리고요.
      40ms라는거가 사실 믿기가 힘듬.
      이건 사람이 인식할 수가 없는 속도로 마운팅되버린다는건데, 그 동안 체험한 인식 시간들은 다 뭐가되는건지;;

  3. addr | edit/del | reply 사또 2014.04.08 11:40 신고

    네이버 카페에 안드로이드 스마트폰 (넥서스4)에 F2FS 적용 방법을 쓰면서 F2FS 설명을 위해 이곳 주소를 첨부하였습니다 혹시 불편하시다면 언제든지 지우겠습니다.
    http://cafe.naver.com/grnf/172310