진짜 넥슨에서 사업을 접을때가 되었나요
오랜만에 들어간 마비노기에 이게 무슨 시몬의 도박인가요 -_-;;;;
물론
사서 지르면 어쩌면 좋은 아이템을 얻을 수 있긴 하지만...
현실에서 하는 도박질하고 다른게 뭔가요 이게 ㅜㅜ
아...
하드유저는 아니지만 올드유저로서 꽤 많이 실망입니다.
이벤트를 하려면 게임 내에서 뭔가 새로운 것을 추가해 줬으면 좋겠다 라는 거지
이런식으로 도박질이나 하게하는 건 아닌거 같아요 ㅠㅜ
어쩌면 대단히 중요한 일
처음 목표는 GA 의 연산과정중 Evaluation 만을 CUDA 로 수정하여 속도를 가속화시키는 것
그러나
이를 실제 코드로 구현하여 수행해 보았더니 생각보다 빠른 속도가 안나온다
그 이유인즉 CPU -> GPU 간 Memory Copy 연산 및 GPU 상의 Memory Allocation 때문인데, 다른 여러 논문에서 GPU 로 GA 를 수행할 때 속도가 증가되었다고 했던 것들을 검토해 보았더니 전부 GPU 상에서 모든 유전 연산을 수행하고 있었다.
분명 단일 연산만을 놓고 보았을 때는 GPU 상에서 Evaluation 을 한번 처리한 것이 가장 빠르지만, 유전 연산을 CPU 상에서 하게되면, 결국 Memory 할당과 복사를 반복하게 되어 속도가 느려지는 것이다. Evaluation 연산을 하기 위해서는 반드시 GPU 상의 메모리에 CPU 의 현재 상태를 복사해야 하니까 결국 이것때문에 반복적인 메모리 복사가 수행될 수 밖에 없는 것.
그렇다면 결론은 GPU 상에서 모든 연산을 처리하는 것인가?
뭐 중요한 요소중에 하나는 내 GPU 가 Geforce G105M 256M 이기 때문에 큰 메모리 할당도 어려울 뿐아니라, Stream Processor 수도 부족해서 제 속도 나오긴 어려울 수 밖에 없다는 건데...
동일한 실험 조건
static const int POPSIZE = 5000;
static const int MAXGENS = 100;
static const int ITERATION = 200;
static const int NVARS = 10;
GPU 상의 실험 결과(Geforce G105M 256MB)
Durations : 14118.000000 ms
CPU 상의 실험 결과(Intel Core2Duo P8600@2.4Ghz, 4 GB ram)
Durations : 10998 ms
다음엔 Geforce GTX270 876MB 에서 테스트 해볼 예정.
과연 어느정도 시점에서 Evaluation 작업만을 수행할 때 GPU 사용 작업이 속도가 대폭 상승할 수 있을 것인가?