C로 그래픽 라이브러리를 작성 중이며 일부 기능의 속도를 높이기 위해 SSE 명령어를 사용하고 싶습니다. 이 일을 어떻게 하죠? 컴파일러 내장 함수에 의존 할 수 있도록 GCC 컴파일러를 사용하고 있습니다. 또한 이미지 데이터를 저장하는 방식을 변경해야하는지 (현재 저는 플로트 배열을 사용하고 있습니다) 알고 싶습니다. float __attribute__ ((vector_size (16)))
배열을 사용해야합니까?SSE 명령어를 사용한 빠른 이미지 조작?
편집 : 나는에 관심이 이미지 조작의 종류/처리 아핀 변환, 기하, 및 주파수 도메인 필터링 (푸리에 분석)을 포함 나는 이미지 조작을 위해 SSE를 사용하는 방법에 대해 이동하는 방법에
언급이나 팁 C에서 많이 감사 할 것입니다.
감사
라이브러리의 알고리즘이 무엇인지 설명해야합니다. 모든 것을 구형으로 변환 할 필요가 없습니다 ... char, short 및 int를 처리하는 많은 SSE 명령어가 있으며, 일부는 MPSADBW와 같은 일반적인 이미지 처리 단계로 특별히 설계되었습니다. 그리고 저수준 프로그래밍 작업과 약간의 속임수를 즐기십니까? 그렇지 않은 경우, SSE는 아마도 당신을위한 것이 아닙니다. – hirschhornsalz
drhirsh, 내 라이브러리는 회전, 축척, 전단, 합성, 기하학 등과 같은 표준 기능을 지원합니다. 그래서 많은 매트릭스 작업이있을 것입니다. 또한 나는 주파수 도메인 이미지 프로세싱 (푸리에 변환 등)을 연구 중이다. 예 더 많은 어셈블리 레벨 프로그래밍에 관심이 많습니다. 과거에 약간의 작업을하고 즐겼습니다 :) SSE 및 이미지 조작/처리에 대한 자세한 내용을 보려면 여기를 클릭하십시오. :) – horseyguy
@banister : http://stackoverflow.com/questions/1389712/getting-started-with-sse/1795196#1795196에서 게시 한 링크 중 일부는 일반적으로 SSE 학습에 유용합니다. 이미지 처리 경험이 없습니다. – int3