일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 데이터 해저드
- gpgpu-sim
- 대구 반도체 설계기업 특화
- gcc 컴파일
- Pyverilog 실행
- pytest-pythonpath 설치 오류
- Makefile compile
- linux makefile 작성
- Design DNN Accelerator
- 남산업힐
- Pyverilog 튜토리얼
- pyverilog 설치 오류
- pygraphviz 설치 오류
- 이진수 곱셈 알고리즘
- Data HAzard
- 컨벌루션 연산
- linux c 컴파일
- DNN 가속기
- CUDA
- 딥러닝 가속기
- systolic array
- linux c++ 컴파일
- Pyverilog 설치
- AMBA
- CDC
- 클럭 게이팅
- DNN Accelerator
- Pyvrilog tutorial
- CLOCK GATING
- makefile
- Today
- Total
목록분류 전체보기 (227)
오늘은 맑음
Data Hazard Pipeline은 프로세스의 성능을 높이기 위해서 사용합니다. 프로세스의 동작주파수는 가장 동작주파수가 느린 회로의 동작주파수에 맞춰 동작하기 때문에 파이프라인을 통해 가장 오래 걸리는 연산을 잘게 쪼개 빠른 동작주파수로 동작할 수 있게 해 줍니다.pipeline화 된 프로세스는 성능은 좋아지겠지만 이에 따른 문제가 발생하게 됩니다.이것을 위험(Hazard)이라고 합니다.오늘은 여러 Hazard 중 Data Hazard에 대해 알아보도록 하겠습니다.Data Hazard는 총 3개로 나눌 수 있습니다. 1. RAW(쓰기 후 읽기/read after write) 우리는 다음과 같은 5단계의 파이프라인을 사용한다고 가정하겠습니다.파이프라인은 Instruction Fetch, Decode,..
SIMT에서의 교착상태(dead lock)란 무엇인가? SIMT에서 교착상태를 알기 위해서는 교착상태를 일으키는 상호배재(mutex)에 대해 알아야 합니다. 상호배제(mutex) OS에서의 상호배제 : 두 개 이상의 프로세스가 동시에 한 자원에 접근 시 한 개의 프로세스만이 자원에 접근할 수 있게 합니다. 즉, A와 B 프로세스가 동시에 같은 자원에 접근했을 경우 A가 상호배제에 의해 접근이 허락된다면, B는 A가 모두 사용한 후에 해당 자원에 대한 허가가 떨어져 접근을 할 수 있게 됩니다. SIMT에서의 상호배제 : 두 개 이상의 thread가 동시에 한 자원에 접근 시 한 개의 thread만이 자원에 접근할 수 있게 됩니다.역시 OS에서의 process와 마찬가지로 A와 B라는 thread가 동시에 ..
thread란 무엇인가?thread란 processor에서 작업을 하는 주체를 의미합니다. 즉, C = A + B라는 연산을 실행했을 때 이 A+B 연산을 하는 주체를 의미합니다.여기서 thread가 2개 이상인 processor를 multi-threaded processor라고 합니다. warp이란 무엇인가? thread가 등장하면 곧 warp이란 단어가 등장합니다. warp은 thread의 덩어리를 의미합니다.warp은 NVIDIA식의 용어이며, NVIDIA에서는 32개의 thread를 1개의 warp이라고 정의합니다.AMD같은 경우에는 warp대신 wavefront라는 단어를 사용하는데, 64개의 thread당 1개의 wavefront라고 정의합니다. SIMT란 무엇인가?warp은 같은 명령어로 동..
GPGPU-SIM에서 소프트웨어를 실행시키려면 C++을 이용한 CUDA로 코딩을 할 줄 알아야 합니다.CUDA란 GPU에서 병렬처리를 이용해 연산을 하게 해 주는 라이브러리입니다.사실 GPGPU-SIM에서 구조적으로 고칠 것이 아니라 어플리케이션만 실행시킨다면 CUDA를 사용할 줄 알아야겠죠?하지만 아직 CUDA를 사용할 줄 모른다면, 또는 구조를 바꾸어 비교할 공식적인 benchmark가 필요하다면 어떻게 해야 할까요? 많은 자료나 논문에서 GPGPU-SIM에서 성능 수치를 알아볼 때 사용하는 benchmark들이 여러개 있습니다. 1. CUDA-SDK2. ispass-20093. Rodinia4. parboil5. merge 1번같은 경우는 virtual machine용 GPGPU-SIM을 설치했을 ..
cache? 캐시? 캐시(cache, 문화어: 캐쉬, 고속완충기, 고속완충기억기)는 컴퓨터 과학에서 데이터나 값을 미리 복사해 놓는 임시 장소를 가리킨다. 캐시는 캐시의 접근 시간에 비해 원래 데이터를 접근하는 시간이 오래 걸리는 경우나 값을 다시 계산하는 시간을 절약하고 싶은 경우에 사용한다. 캐시에 데이터를 미리 복사해 놓으면 계산이나 접근 시간 없이 더 빠른 속도로 데이터에 접근할 수 있다. -이상 wiki백과에서의 캐시에 대한 정의입니다. 무어의 법칙(Moore's law)에 의해 최근까지 CPU의 처리속도가 급격하게 증가했습니다. 이에 따라 메모리 접근속도도 함께 늘어나면 좋겠지만 그러지 못했습니다...이로 인해 메인메모리에서 데이터를 가져와 CPU에서 아무리 빨리 처리를 해도다음 연산에 필요한..