2015.02.25 13:30
큰 이미지를 열 때 작업관리자를 보면 멀티코어를 다 쓰는 것 같지 않던데, 큰 jpg나 png나 gif를 열 때 멀티코어라던가 opencl 같은 gpgpu라던가를 적용해서 더 빠르게 열 수는 없나요?
그리고 ffmpeg를 보면 이미지 처리 기능이 있던데, 이걸 사용하면 움직이는 gif나 png를 더 빠르게 처리할 수 있지 않을까요?
그리고 밑에 보니 메모리 확보에 시간이 걸린다는 말도 있던데, jemalloc 같은 걸 쓰면 안 되나요?
큰 이미지를 열때 꿀뷰는 malloc 이 아닌 CreateDIBSection 을 호출하기 때문에 별도의 메모리 관리자를 사용한다고 해서 속도가 빨라지지는 않습니다.
또한 이미지 디코딩과 같은 작업은 대부분 직렬화 되어 있어서 멀티쓰레드를 이용하는것이 불가능한 경우가 대부분입니다.
현재, 큰 이미지를 로드할때 발생하는 병목 해결을 위해서는 병렬 처리 보다는, 알고리즘 자체의 개선이 필요한 부분인데,
처리가 상당히 복잡해지기 때문에 개선이 쉽지가 않네요. ^^;