GPGPU Simulation - 1부

Share
GPGPU Simulation - 1부
Simulation

Simulation을 이용하면 GPU없이 CPU만으로도 CUDA (OpenCL) 코드를 돌려볼 수 있다. (물론 emulation 만으로도 가능하다.)
CPU 에서 GPU의 동작을 소프트웨어로 구현 simulator 들이 있다.
대표적으로 gpgpu-sim 과 multi2sim 이 있다.
Verilog로 구현되어 CPU가 아닌 FPGA에서 GPU를 직접 구워볼수 있는 miaowgpu 도 있다.

Simulation의 용도

이러한 simulation은 사실 GPU가 없는 사람을 위한 것은 아니다.
실제 GPU에서 돌리면 1초 짜리가 simulation하면 너무 오래걸린다. (하루 이상 걸리는 경우도 있다.)
보통 2가지 정도 용도로 쓰인다.

  • CUDA (OpenCL) 프로그램의 최적화를 위하여 실제 GPU 중 bottleneck 이 어디인지 조사
  • GPU architecture 개선을 위한 실험

첫번째 항목의 경우 NVIDIA 에서 제공하는 profiler를 통해 cache miss 같은 간단한 정보들을 알 수 있는데, Simulator에서는 더 자세한 정보들을 알 수 있다. (Cycle by Cycle 로 모든 정보가 추적 가능하다.)
물론 실제 GPU와는 차이가 있기 때문에 정보가 정확하지는 않다. 최신 CUDA버전은 지원 되지도 않고....

두번째 항목이 사실 가장 많이 쓰이는 용도라고 볼 수 있는데, 실제 GPU를 개선하기 위하여 매번 하드웨어 칩을 찍어볼 수는 없는 노릇이다. 그래서 소프트웨어를 통해 하드웨어를 변환해보고 실험한다.
이는 CPU, DRAM 도 마찬가지이다. 위에 소개한 Multi2sim의 경우는 CPU와 GPU 모두 가능한 시뮬레이터 이다.

다음번에는 GPGPU 시뮬레이션의 실제 사용 예를 소개하도록 하겠다.

Read more

허깅페이스 르로봇 해커톤 후기

허깅페이스 르로봇 해커톤 후기

본 블로그의 주인장들은 이번 허깅페이스의 르로봇 월드와이드 해커톤의 서울 호스트를 맡았습니다. 너무 재밌었고, 그 과정들과 후기를 남깁니다. 현장은 다큐 형식의 작은 영상을 만들었으니 한번 봐주세요. 계기 저는 LLM 만 하고 있었고, Action 모델은 사실 관심이 없었습니다, 준호는 1년 정도 로봇에 AI 를 넣는 일을 하고 있었죠. 허깅페이스에서 르로봇 플랫폼을 만들고

By park jong hyun
DeepDive LLM 3편 - Reinforcement Learning

DeepDive LLM 3편 - Reinforcement Learning

* 1편 - 사전 학습 (Pre Training) * 2편 - Supervised Fine Tuning * 3편 - Reinforcement Learning Reinforcement Learning Pretrain, SFT 에 이어서 세번째 단계는 Reinforcement Learning (RL, 강화학습) 입니다. 비유를 해보자면, pretrain은 그냥 책을 읽는 것이고요, SFT는 예제 문제와 이미 작성된 해설을 보는 것입니다. RL 은 해설이 없는 문제를 직접 풀어보는 것입니다. 어떻게 풀든

By park jong hyun
DeepDive LLM 2편 - Supervised Fine Tuning

DeepDive LLM 2편 - Supervised Fine Tuning

* 1편 - 사전 학습 (Pre Training) * 2편 - Supervised Fine Tuning * 3편 - 강화 학습 (Reinforcement Learning) Supervised Fine Tuning Post Training 의 첫번째 단계 SFT 입니다. Pre Training 에 비하면 아주 작은 양의 데이터만 필요하지만, 실제로 성능을 이끌어 내는데에는 중요한 단계입니다. 멀티턴 대화 (Multi Turn Conversation) ChatGPT 를 포함해서 대부분의 AI 서비스들은

By park jong hyun
DeepDive LLM 1편 - 사전 학습 (Pre-Training)

DeepDive LLM 1편 - 사전 학습 (Pre-Training)

본 포스트 시리즈는 카파시 선생님의 영상 을 기반으로 정리한 내용입니다. 직접 유투브에서 다루기도 했으니 영상으로 보셔도 됩니다. * 1편 - 사전 학습 (Pre-Training) * 2편 - Supervised Fine Tuning * 3편 - 강화 학습 (Reinforcement Learning) LLM 의 Training LLM을 만들 때는 크게 세 가지 주요 단계가 있습니다. 1. 사전 학습(Pre-Training) * 인터넷 텍스트(

By park jong hyun