서적에 관한 질문 및 오류 등을 문의 할 수 있으며, 저자로부터 직접 답변을 받을 수 있습니다.
안녕하십니까?
이제 안드로이드에 대한 개발 초석은 올려 놓은 것 같습니다.
무언가를 소프웨어로 개발하려면 그 실행 속도가 중요한 이슈중에 하나일 것으로 사료됩니다.
제가 주로 개발하는 분야는 영상처리로서 실행 속도가 중요합니다.
따라서 NDK책에 잠깐 소개된 NEON에 대해 좀더 자세히 살펴보고자 합니다.
염치없는 문의지만, 혹시 NEON관련 좋은 참고 문서를 가지고 계신 분이 계시다면 공유해 주실 수 있는 지 궁금합니다.
감사합니다.
즐거운 하루 보내십시오.
그냥 ARM용 어셈블리 새로 공부하신다고 생각하면 됩니다.
누군가 C 라이브러리 형태로 만들어서 함수 호출로 쓸수 있도록 해주면 좋으련만..
아직 나온지 얼마되지 않아서 맨땅에 헤딩하는 수준 -_-;
http://blogs.arm.com/software-
http://blogs.arm.com/software-
http://blogs.arm.com/software-
http://blogs.arm.com/software-
안녕하세요. 지나가면서 잘 모르지만..한자 적어봅니다.
C에서 바로 neon run time library를 바로 호출할수있는걸로 알고있습니다. RVDS만 해당되는건가요? ^^
http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0205ik/BABGHIFH.html
회사에서 rvds만 써서... T.T
적어주신 링크 및 거기에 소개되어 있는 PDF 문서도 살펴보았습니다.
NEON 관련 어셈코드를 C로 바꾸어 놓은 것이네요.
제가 언급했던 내용들은 그게 아니라 실전에서 쓸수 있는 기능들을 모아 놓은 라이브러리를 의미하는 거였습니다. 예를 들면 카메라에서 들어오는 데이터를 LCD로 뿌릴때는 다음과 같은 함수가 사용됩니다.
yuv2rgb( );
일반적인 경우에는 C로 작성되어 있습니다만, 속도를 요하는 경우엔 일부코드를 어셈으로 작성하는 경우도 있습니다. 다만 데스크탑 컴퓨터를 기준으로 처리하다 보니 코드들이 x86에 들어 있는 MMX과 같은 것을 쓰도록 되어 있지요.
인텔에서는 그러한 용도로 아예 라이브러리를 따로 제작해서 상용으로 판매합니다. IPP 라이브러리 라는 이름으로 제공하고 있습니다.
하지만 임베디드 시스템의 경우엔 ARM과 같은 CPU를 사용하므로 x86 어셈코드로 작성된 라이브러리는 사용이 불가능합니다. ARM의 경우엔 Version 7 부터 NEON 이 적용되어 있기 때문에 이제 막 쓰기 시작하는 단계입니다.
인텔의 IPP 라이브러리에는 동영상 코덱을 사용한다거나, 기타 멀티미디어 데이터를 처리할때 써먹을수 있는 실전용 C 함수들이 들어 있습니다.
ARM쪽에서도 이런 라이브러리가 나와주길 바라는 마음에서 몇글자 적은것인데..
제가 "우물가에서 숭늉 찾은격"이 된것 같네요. ^^;
저는 ARM에서 나온 인스트럭션 자료 보고 공부했어요..