해결된 질문
작성
·
64
1
안녕하세요 🙂
[1. 질문 챕터] : eg) 몇 장, 몇 분 몇 초 쯤. or 수강생 분들이 봤을 때 어디구나?! 할 수 있게 표기 부탁 드려요.
[2. 질문 내용] : eg) 질문 내용을 자유롭게 작성해주시면 되겠습니다 🙂
[3. 시도했던 내용, 그렇게 생각하는 이유] : eg) 설치영상은 이렇게 시도했는데 안되더라 or 본인의 생각을 적어주세요. (실습 내용 중에 이해가 안되거나 잘못된 내용이 있는데, 이러 이러한 근거로 나는 이렇게 생각합니다.)
================ 다음 내용은 읽어보시고 지우시면 됩니다.=================
질문 내용을 작성해주실 때, 위의 3단계로 제가 이해할 수 있게 작성해주시면 정확한 답변을 드릴 수 있을 것 같아요!!
현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)
강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)
이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)
개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..
글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)
서로 예의를 지키며 존중하는 문화를 만들어가요.
질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )
먼저 유사한 질문이 있었는지 검색해보세요.
잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
==================
막강의까지 듣고 궁금증이 생겨서 질문드려요.
Fully connected layer를 코어로 두었을때 연산을 처음 1번하면 sw보다 더 느렸죠.
이 이유는 bram이 데이터를 넣는 과정이 너무? 오래걸려서였구요.
이것에 대한 이유가 axi4 라이트의 한계인 단일트랜잭션 때문인가요?
그리고 이것을 ai가속기가 어떻게 해결할수있는건가요?
사실 이미 ai가속기까지 결제했는데... 궁금해져서요!!
항상 감사해요.
답변 2
0
안녕하세요 🙂
정확하게 파악하셨습니다.
System 에서 한 부분이라도 performance drop 이 생기는 부분이 발생한다면, 전체 system 의 속도는 bottleneck 부분에 align 됩니다. (느린쪽으로 속도가 맞춰짐)
따라서 core 연산 속도만 빠르다고 될 것이 아니라 data 를 core 에 전달해주는 속도도 중요합니다.
AI 강의는 Core 연산에 초점을 맞춘 강의이고요.
Verilog HDL S2 (AMBA AXI 강의) 는 Data 를 어떻게 빠르게 전달할 것인가에 초점을 맞춘 강의입니다.
이 두 부분이 해소 되어야, 원하는 performance 를 갖추실 수 있을꺼에요.
공부하시는 내용의 난이도는 현업 4~8년차를 타겟으로 만들었습니다.
그만큼 어렵지만 배우실 수 있는 내용이 많을꺼에요.
즐공하세요 🙂
0
안녕하세요, 인프런 AI 인턴입니다. Koro님께서 언급하신 FPGA 가속기의 성능 문제, 특히 BRAM과 AXI4 인터페이스가 연산 속도에 미치는 영향에 대해 설명드리겠습니다.
FPGA 기반의 HW 가속기를 설계할 때 데이터 이동은 성능에 매우 중요한 요소입니다. BRAM에 데이터를 로드하는 과정에서 발생하는 지연은 AXI4 인터페이스의 특성 때문에 발생할 수 있습니다.
AXI4 Lite 한계: AXI4 Lite는 경량 트랜잭션을 위해 설계되었으며, 단일 트랜잭션 중심입니다. 이는 데이터 이동 속도가 제한적일 수밖에 없다는 것을 의미합니다. 특히 대량의 데이터를 전송해야 하는 경우 이 문제는 더 두드러질 수 있습니다.
연산 속도 최적화: 이 문제를 해결하기 위해 병렬 처리 가능성이 높은 AXI4(Full)를 활용하는 방법, DMA 엔진을 통해 대량의 데이터를 고속으로 전송하는 방법 등이 고려될 수 있습니다. 이는 주로 대량의 연산이 필요한 AI 가속기 설계에서 고려되는 방법이기도 합니다.
Data Burst Mode: AXI4 Full의 경우 burst 모드를 통해 데이터를 효율적으로 전송할 수 있어 속도 개선에 도움이 됩니다.
Direct Memory Access(DMA): 메모리 데이터 전송 최적화를 위해 DMA 설정을 통해 연산 중 중앙 프로세서를 사용하지 않고도 데이터를 빠르게 주고받을 수 있습니다.
HLS (High-Level Synthesis)을 통한 최적화: HLS를 활용하여 최적화된 데이터 경로를 설계, 데이터 이동의 효율성을 제공할 수 있습니다.
이외에도 AI 가속기에 대한 상세 구현 방법에 대해선 강의를 통해 더 깊이 있는 학습을 하실 수 있을 것으로 보입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.