IT이야기2016. 7. 14. 03:53

애플이 제품만 잘 만드는 것이 아니라 생태계를 잘 만들어서 들어오면 빠져나갈수 없고 자꾸 애플 제품만을 사게하는 기술로 지금의 자리에 있는 것이지요. 삼성은 그것 못해서 죽어라고 HW만 만들고, 잘 팔아도 맨날 위기라고 하는 것이고요.


그래픽 세상에서 기술력도 중요하지만 이런 생태계를 아직 만는 기업이 없어서 주구장장 치킨게임만 하다가 NVidia가 CUDA라는 GPU API이자 생태계를 만들었는데, 애플처럼 이미 게임의 판도를 업은것 같습니다. AMD-ATI가 이미 죽은 기업으로 돈도없고 투자할 여력도 안되는 입장에서 절대 따라갈수 없는 상황이 된것이지요.


게임하려면 DirectX, OpenGL, OpenCL 지원 GPU를 찾기 마련이지요. 게임만 하려면 새로 나온 GPU중에 적당한 가격만 고르면 AMD던 NVidia든 큰 차이는 없다고 생각됩니다. 게임 이상의 뭔가 더를 원한다면 이제 CUDA 지원 레벨까지 check하게 됩니다. 당연히 CUDA는 NVidia만 지원하지요. CUDA encoder/encoder는 다른 스탠다드 encoder/encoder보다 훨씬 효율적이고 강력합니다. 헐, 그래서 영상 편집, 사진 편집 system은 CUDA 지원 HW/SW가 아주 절실합니다. 학교나 과학자를 위해서도 CUDA는 아주 중요하지요.


요즘 핫한 AI(인공지능)과 machine learning을 위한 환경에서 CUDA는 어떠한 platform보다 우수합니다. 헐~ 물론 이런 쪽은 전문가들과 전공자들을 위한 것이라서 수요가 얼마나 될까하지만, 맹목적으로 추종하는 사람까지 생겨나는거 보면 이미 AMD는 따라올수 없는 상황이 된것 같습니다.

---------------------

https://developer.nvidia.com/cuda-zone



---------------------

그런데 CUDA가 배우기가 쉽지 않다는 것은 함정! C++11 먼저 배우고 오라는 불친절한 엔비디아.

The Power of C++11 in CUDA 7

---------------------

제 노트북이 가진 Nvidia Quadro K1000M은 CUDA 지원버전이 아주 불확실하네요. 지원는 하겠죠.

http://www.nvidia.com/object/quadro-for-mobile-workstations.html


Posted by 쁘레드
IT이야기2016. 3. 23. 01:37

AI는 이미 20년전부터 활발하게 연구가 시작되었지요. 한국은 당장 돈 안되는것을 할 여력이 안되서 AI는 물론 그 기반이 되는 big data, 병렬처리(parallel computing), neural network 등 연구가 엄청 뒤쳐져 있지요. 늦었다고 생각할때가 가장 빠른때긴 하지만, 늦었는데 또 주먹구식으로 하다가는 완전 말아먹기 딱이지요.


미국에서는 이미 금융쪽에 2014년부터 활발하게 적용되고 있습니다. 돈이 되기따문이지요. 그 다음으로는 핼스캐어(health care)쪽에 적용되려고 하고 있습니다.


미국 금융의 절대 강자 골드만삭스는 구글과 손잡고 금융계의 알파고를 이미 2014년부터 실전에 배치했습니다. 금융전문방송인 CNBC에서 계속 방송을 통해 켄쇼가 분석해낸 데이타를 보여주고 있습니다.


이런것은 한국사람들이 잘하지 말라고 해도 잘할수 있는 분야인데, 정말 아쉽지요. 잘못된 정치와 재벌위주의 경제가 어떻게 나라를 망치는지에 대한 아주 좋은 예입니다.

----------------------

https://www.kensho.com/#/



----------------------

금융도 하루하루 엄청난 data의 연속이지요. 변수가 10개이상이면 사람이 계산해 내기는 한계가 있고 data양이 많아지면 더욱 불가능하지요. 이런것은 기계가 인간보다 더 잘할수밖에 없지요, 사람이 할일이 이제 아니지요. CNBC에서 사용하는 Ask Kensho. 한동안 인간을 보조하는 용으로 많이 사용되다가 어느순간 인간이 보조하는 역할로 바뀔것 같네요.



----------------------



Posted by 쁘레드
Programming2016. 3. 17. 04:29

MPI – Message Passing Interface

------------------

http://mpich.org/

https://www.open-mpi.org/

http://www.mpi-forum.org/docs/docs.html

------------------

https://computing.llnl.gov/tutorials/mpi/ ; 국가연구소, 자세한 설명

http://mpitutorial.com

------------------

*API list and guide

http://www.mcs.anl.gov/research/projects/mpi/www/www3/

------------------

*mpi4py python API

https://groups.google.com/forum/#!forum/mpi4py

https://mpi4py.scipy.org/docs/usrman/install.html


pip install mpi4py

------------------

A brief introduction to Apache Hadoop

The technology known as Apache Hadoop is an open-source framework for developing distributed applications hosted by the Apache Software Foundation. The framework contains a number of subprojects. The one we are interested in is the Hadoop Core, also known as Hadoop Common.The Hadoop Common project is located within the overall Hadoop framework. It allows the development of cloud computing environments via off-the-shelf hardware such as the Raspberry Pi. The developer interacts with it by using its Java based API.Within Hadoop Common there are several significant areas that help us achieve our goal of developing parallel computing applications. Two of the most important areas are as follows:
  • Hadoop MapReduce environment
  • Hadoop Distributed File System (HDFS)
------------------
MapReduce = Map + Reduce
------------------
MPI, Hadoop, and parallel computing
Further resources on MPI are as follows:
  • Java examples—Cardiff University
    • http://users.cs.cf.ac.uk/David.W.Walker/CM0323/code.html
  • MPI tutorials—Lawrence Livermore National Laboratory
    • https://computing.llnl.gov/tutorials/mpi/
  • Hadoop MapReduce tutorial—Apache Foundation
    • http://hadoop.apache.org/docs/stable/mapred_tutorial.html
  • Raspberry Pi Cloud blog
    • http://raspberrypicloud.wordpress.com/2013/04/25/getting-hadoop-to-run-on-the-raspberry-pi/
  • Beowulf clusters—Duke University
    • http://www.phy.duke.edu/~rgb/brahma/Resources/beowulf/papers/ICPP95/icpp95.html
  • Parallel Computing—Intel
    • http://www.intel.com/pressroom/kits/upcrc/ParallelComputing_backgrounder.pdf
  • Parallel Programming—Gribble Lab
    • http://gribblelab.org/CBootcamp/A2_Parallel_Programming_in_C.html
  • Virtualization—Red Hat
    • http://www.redhat.com/products/cloud-computing/virtualization/
  • Virtual Machines—Virtual Box
    • https://www.virtualbox.org/


Posted by 쁘레드