윈도우 프로그래밍

Low Fragementation Heap(LFH)

하늘흐늘 2009. 7. 3. 16:50
반응형


Low Fragementation Heap이란 Heap Memory에 대하여 new와 delete등의 메모리 할당 및 소멸 작업시 멀티쓰레드에서의 Lock에 의한 overhead를 줄여주는 Heap을 말합니다. XP에서 처음 도입되었으며 Vista에서 본격적으로 홍보된 Windows Heap의 일종입니다. 1개의 CPU가 아닌 N개의 CPU에서 멀티쓰레드에서 16KB이하의 메모리를 할당을 위하여 사용할 때 괄목할 만한 성능 향상이 있으며 상황에 따라 기본 Heap에 비하여 성능이 떨어지기도 합니다. 주로 서버용 프로그램에 사용되어질 듯 합니다. 자세한 내용을 담은 페이지는 아래와 같습니다.

윈도우 비스타 힙 관리자
Vista에서의 LFH를 소개한 블로그 글입니다. 댓글에 자세한 테스트를 한 분의 글이 있으니 놓치지 않고 읽어야 합니다.

Lock-Free memory allocator
같은 블로거님의 글로 해당 allocator를 Maged Michael의 알고리즘에 따라 구현하시고 글을 남겨놓으신 것 입니다.

Window Heap Memory
WIndows LFH에 대한 자세한 설명과 성능 테스트 코드를 볼 수 있는 글입니다. 관심있으시면 추천하고 싶은 글입니다.

MicroQuill 사용해보신분 계신가요?
Window LFH에 대하여 Lock-Free냐 아니냐로 논쟁이 붙었던 GPGStudy글입니다. 읽다보면 참이나 배우는게 많아서 관심있으시면 한번 쯤 읽어보실것을 추천합니다. 멀티쓰레드에서 메모리관련 오버헤드를 줄이기 위하여 Hoard등 다양한 Heap관련 알고리즘이나 라이브러리 이야기가 나옵니다.

반응형