본문 바로가기

프로그래밍

(9)
앙큼한 돌싱녀(최종회)에서의 차정우 프로그래밍 환경과 실력은.. 앙큼한 돌싱녀 마지막회에서 차정우가 혼자서 개발을 하고 있는 장면이 나온다.. 어떻게 저렇게 키보드 소리가 끊이질않고 코딩을 할 수 있지? 정말 천재인가.. 아니면 또 구구단 프로그램 만드는가..ㅋ (참고 : http://abipictures.tistory.com/940) 아무튼.. 잠깐 프로그래밍 화면이 스쳐지나가는데.. 마지막회라 그런가.. 지난번 구구단 프로그래밍보다는 뭔가 더 있어보인다.. 신경을 쓴 듯하다.오잉.. 요건 뭔가..? 이전회에서도 잠깐 비춰진 3D 캐릭터 화면이나 게임이야기가 나오는 것으로 봐서는 저 그래프 데이터는 3D 캐릭터의 모션 데이터로 보인다. 3D 캐릭터에서 관절처럼 움직일 수 있는 포인트의 시간 궤적 데이터인것으로 보인다. 그리고, 이 프로그램은 CAD 프로그램 개발사로..
C++ Linear algebra library C++ 기반 선형대수 라이브러리. 속도도 괜찮다고 함. 참고. http://arma.sourceforge.net
GoF 디자인 패턴! 이렇게 활용한다. 한빛미디어 / 장세찬 저 / 이 책을 산지는 한 2년가까이된다. 역시 기술이라는 것은 몸으로 익히지 않으면, 내것이 될 수 없다는 말이 맞다. 보면 "아~ 요게 이럴때 쓰면 되겠구나.."라고 싶지만, 책을 덮는순간 그 기억은 short term memory에서 서서히 사라진다. short term memory에 저장된 기억은 어떤 기억보다 빨리 recall될 수 있기때문에, 빨리 체득하여 반사적으로 그 테크닉들이 적시적소에 사용될 수 있도록 연습을 해야한다. 이 책을 다시 보고 있는데.. 보면 새록 새록 기억이 떠오른다. 보다보면 내가 짰던 코드들이 요렇게 디자인하면 훨씬 간결해질텐데 왜 몰랐을까.. 한다.. GoF 디자인패턴.. 이 책은 프로그래밍을 하는 사람이라면 적어도 한번은 봐줘야 하는게 예의(?..
Intel IPP(Integrated Performance Primitives)의 성능 향상정도 아래 그림처럼, 일반적인 단일 쓰레드에서 처리하는 경우보다 훨씬 좋은 성능을 IPP를 통해 만들수 있다는 것을 보여준다. 라이브러리가 최적화 되어있어서, 실질적으로 우리가 OpenMP로 병렬처리 하도록 만드는것보다 성능이 좋다고 한다. 운영 체제 이제 Mac OS*용 지원이 제공됩니다! Mac OS*용 인텔® 통합 성능 프리미티브(IPP) 5.1을 통해 Windows* 및 Linux*에서 사용하던 동일한 라이브러리 API 및 함수를 사용하여 손쉽게 사용자 애플리케이션을 Mac OS*로 포팅할 수 있습니다. 개발 환경 인텔 IPP는 Microsoft Visual Studio*, Xcode*, Eclipse*, GCC 및 인텔® C++ 컴파일러와 같은 인기 있는 개발 환경 및 도구에서 간편하게 사용하고 통합..
로봇 3D 동역학 시뮬레이션, 매니퓰레이션, 네비게이션 공개 WIKI 현재 저희 팀에서 작업하고 있는 로봇 관련 WIKI 홈페이지 입니다. 아직 많은 자료가 업로드 되진 않았지만, 계속 꾸준히 업데이트 할 예정입니다. 대략적인 내용은 로봇 암의 매니퓰레이션을 위한 기구학, 동역학에 대한 이론과 Visual C++로 구현된 예제코드와 동영상이 있고, 위치인식 및 주행관련 내용, 로봇 핸드의 파지, 매니퓰레이터의 안전, 기타 개발된 저작도구와 모션합성등등.. 일반적인 로봇 개발자나 전공자 도는 관심이 있는 사람들이 쉽게 접할 수 있고, 실제 코드를 이해할 수 있도록 만들려고 노력하고 있습니다. 그리고, 누구나 wiki 계정을 생성하여 내용을 수정, 편집이 가능합니다. 관심이 있는 분들의 참여를 기다립니다. 내용이 오류가 있으면 알려주시거나 수정을 해주시면 됩니다. 로봇기술의 ..
멀티쓰레드(Multi-thread) 어플리케이션을 위한 OpenMP의 기능 병렬 계산의 분야에서는 "병렬 계산은 장래적으로는 각광을 받는다. 언제가 되어도 장래적으로" 등이라고 말 해지기도 합니다. 이것은 최근 수십 년에 있어 진실했습니다. 같은 일은 컴퓨터 아키텍쳐의 업계에도 있어 프로세서 클락의 고속화는 곧바로 한계에 이른다고 언제나 말해지고 있습니다만 실제로는 지금도 고속화가 계속 되고 있습니다. 멀티 코어 혁명은 이러한 병렬처리 분야에서의 낙관과 아키텍쳐 분야에서의 비관의 충돌이라고 말할 수 있습니다. 주요한 CPU 벤더는 클락 속도의 증가로부터 멀티 코어 프로세서에 의한 on-chip로의 병렬처리 지원의 제공으로 방향성을 바꾸고 있습니다. 생각은 단순하고 하나의 칩에 복수의 CPU 코어를 탑재하자고 하는 것입니다. 이것에 의해 하나개의 프로세서에 2개의 코어를 탑재하고..
멀티쓰레드 프로그래밍.. OpenMP로 처리해보자. 로봇 소프트웨어처럼 멀티 쓰레드 프로그래밍이 반드시 필요한 부분에서 항상 문제가 쓰레드간 동기화와 멀티코어 환경에서의 프로그램 수행속도같은 문제가 항상 걸렸다. 그것을 간편하게 OpenMP라는 것을 사용하면 해결가능 하지 않을까 하면 찾아보던중 관련글을 올려보기로 한다. 본인도 OpenMP를 처음 들어본거라 잘 모른다. 이제 한번 살펴보고난뒤에 한번 나의 연구에 적용을 해보려고 한다. 아래글은 www.gisdeveloper.co.kr 에서 퍼온 글입니다. OpenMP에 대한 더 자세한 내용을 보시려면 http://openmp.org/wp/ 을 방문해 보십시오. Visual Studio 2008에서의 OpenMP사용은 http://msdn.microsoft.com/en-us/library/tt15eb9t...
병렬 처리와 관련한 핵심 컨셉 병렬 처리 프로그래밍을 하려고 마음을 먹고, 또 멀티 코어 프로세서에 대해 관심을 가지기 시작하고, 프로그래밍을 하다 보면 많은 컨셉들이 있을것이다. 반드시 이해해야 할 중요하지만 매우 단순한 컨셉들을 살펴보겠다. 안녕하세요 제임스 랜더스 입니다. 오늘은 병렬 처리와 관련한 핵심 컨셉들을 알아보는 시간을 가지도록 하겠습니다. 병렬 처리 프로그래밍을 하려고 마음을 먹고, 또 멀티 코어 프로세서에 대해 관심을 가지기 시작하고, 그리고 실제로 프로그래밍을 하시다 보면 많이 들으시는 컨셉들이 있을 겁니다. 앞으로 제가 설명해 드릴 컨셉들은 반드시 이해해야 할 중요한 것들입니다. 실로 매우 단순한 컨셉들이기도 하죠. 한 번 살펴보겠습니다. 우선 가장 먼저 태스크/데이터 병렬 처리 입니다. 이들이 과연 무엇인지부터..