일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Pyverilog 튜토리얼
- 딥러닝 가속기
- DNN 가속기
- 데이터 해저드
- gpgpu-sim
- linux makefile 작성
- pytest-pythonpath 설치 오류
- Pyverilog 실행
- 클럭 게이팅
- CLOCK GATING
- Pyverilog 설치
- AMBA
- Makefile compile
- gcc 컴파일
- linux c++ 컴파일
- 남산업힐
- 이진수 곱셈 알고리즘
- 컨벌루션 연산
- makefile
- pygraphviz 설치 오류
- CDC
- CUDA
- 대구 반도체 설계기업 특화
- pyverilog 설치 오류
- systolic array
- linux c 컴파일
- Data HAzard
- Pyvrilog tutorial
- DNN Accelerator
- Design DNN Accelerator
- Today
- Total
목록분류 전체보기 (227)
오늘은 맑음
Data prefetch Data prefetch란 앞으로 연산에 필요한 data들을 미리 가져오는 것을 의미합니다. 미리 가져온다... 미리 가져오면 좋은점이 어떤 것이 있을까요? 바로 Memory latency를 감출 수 있습니다. 감추는 것은 어떤 것을 의미할까요? 이전 cache에 대해 포스팅한 글에서 말했듯이 CPU의 연산속도보다 메모리에 접근하는 속도가 느리기 때문에 이를 보완하기 위해 다층구조의 cache를 사용한다고 했습니다. 아무리 보완하더라도 CPU에서 연산에 필요한 요청이 들어오게 되면 다시 데이터를 가져오는 시간이 걸리겠죠?이를 Memory latency라고 하며 이를 감추는 방법을 Memory latency hiding기법이라고 합니다. 이제 Memory latency를 prefe..
window환경에서 visual studio 15/CUDA 8.0 설치하기 CUDA를 설치하려면 먼저 visual studio를 설치해야 합니다. 저는 visual studio 15버전을 미리 설치해 두었으므로 생략하도록 하겠습니다. 1. CUDA를 다운로드하기https://developer.nvidia.com/cuda-90-download-archive에서 다운로드하실 수 있습니다.다음 창이 뜨면 본인에게 맞는 옵션을 선택 후 다운로드 하시면 됩니다. 2. CUDA 설치하기 동의 및 계속을 쭉 눌러주시면 됩니다 3. 환경변수가 잘 설정되었는지 확인하기path에 CUDA_PATH가 잘 설정되어있나 확인해줍니다.환경변수까지 확인을 하셨으면 visual studio를 켜시고 프로젝트를 만들어줍니다.저는 CU..
GPGPU-Sim은 2단계 cache 구조를 갖고 있습니다.unified L2 cache와 split L1 cache로 구성되어있죠.split cache란 instruction cache와 data cache가 분리된 구조를 말합니다. 저는 L2 cache를 한번 없애보고 싶었어요... config file에서 그냥 지워버리면되나 싶었는데 이것저것 해보다가 GPGPU-SIM GROUP에 질문을 올렸습니다.친절하신 분께서 답장을 해주셔서 궁금증을 해결했어요! gpgpu_cache:dl2 none이라고 입력해주면 된다고 가르쳐줬습니다. 그 결과 마지막 출력창에서 L2 cache의 부분이 사라졌습니다.가르쳐주신분께 감사를 표하며... 궁금한게 있으시면 GPGPU-SIM GROUP을 찾아보시거나 글을 올려보세요..
저번 포스팅에서는 일반적인 in-order processor에서의 scoreboard에 대해서 알아보았습니다.이번에는 highly parallel architecture processor에서의 scoreboard에 대해 알아보겠습니다. 과연 두 개의 차이점이 무엇일까요?highly parallel architecture은 즉, thread가 매우 많은 multi-thread processor라고 할 수 있습니다. multi-thread processor의 경우 예를 들어보겠습니다. 1. 1개의 warp당 128개의 register를 갖고있습니다.2. 1개의 core당 64개의 warp을 갖고있습니다. 그렇다면 총 register의 개수는 총 8912개가 존재하며, in-order processor에서 사..
2019년 겨울이 다 끝나가는 듯 싶더니 오늘 큰 눈이 와서 다시 겨울느낌이 나네요.작년 12월 어반자카파 겨울 콘서트를 다녀온게 엊그저께 같은데 벌써 3월이 다가오네요.저는 서울은 시기를 놓쳐 고양 아람누리로 다녀왔어요.평소에도 너무 가고싶었지만 한번도 가보지 못했는데 문뜩 연말 콘서트가 생각나더라구요!그래서 알아봤는데 딱 R석 1열에 자리가 있어서 바로 결제를 해버렸습니다.너무 가고싶었어서 가격은 딱히 생각 안했던 것 같아요아람누리 내부에 착석해서 찍었습니다.콘서트 전부터 어반자카파 노래를 틀어주어 기분이 되게 좋았어요처음 와보는 콘서트기도 하고 혼자왔기 때문에 더욱 떨리기도 했던 것 같아요※콘서트가 끝나고 찍었습니다. ※콘서트 도중에는 핸드폰 카메라 촬영이 절대 금지입니다!콘서트 도중 직원분들이 카..
Register Scoreboarding 지난 포스팅에서는 data hazard에 대해서 알아보았습니다. 그 세 가지 data hazard를 막을 수 있는 scoreboarding에 대해서 알아보도록 하겠습니다.scoreboarding은 말 그대로 register에 점수를 기록한다고 생각하면 되겠습니다.scoreboard에는 각 register를 대표하는 single bit들이 준비되어 있습니다.만약 입력된 명령어 A의 결과가 write될 예정이라면, 해당 register의 bit를 set시킵니다.다른 명령어 B가 들어와 set된 register에 read/write를 할 예정이라면, 이 명령어는 stall됩니다.이전에 들어온 명령어가 write를 수행하고 나서야 set된 bit는 clear가 될 것이며..