반응형

컴퓨터 46

[OS] Operating System Structures (part2)

*본 포스팅은 2020학년 1학기 홍석인 교수님의 운영체제 수업을 두서없이 정리한 것임을 밝힙니다. System call interface에서 파라미터를 OS에게 주는 방법은 세가지가 있음 - The simplest approach: pass the parameter in registers CPU의 register 갯수는 한정돼있음. 그런데, 파라미터의 갯수는 많기 때문에 적절하지 않은 접근법임 - Block method: Parameters are stored in a block (memory), and the address of the block is passed as a parameter in register (eg. printf("hello")의 경우 hello를 메모리에, address를 reg..

[OS] Operating System Structures (part1)

*본 포스팅은 2020학년 1학기 홍석인 교수님의 운영체제 수업을 두서없이 정리한 것임을 밝힙니다. - 운영체제가 유저와 프로세스, 다른 시스템들에게 어떤 서비스를 제공하는 지 - 운영체제를 구성하는 것이는 무엇이 있는지 알아본다. 운영체제 : 운영체제는 기본적으로 프로그램을 실행할 수 있는 환경을 제공해준다. 유저를 위한 운영체제 서비스 - User Interface a. CLI: Command-line interface (리눅스 머신을 사용할 때 주로 터미널을 띄우고 커맨드를 입력해 컴퓨터를 사용하는 데 이를 CLI라 함) b. GUI: Graphical user interface. (윈도우 기반으로 컴퓨터를 사용하는 것이라 이해하면 됨) c. Batch Interface. (Computing sys..

Design/Verification Complexity

Design/Verification Complexity는 각각 하드웨워에 대한 설계 및 검증 복잡도를 의미한다. 하드웨어가 복잡하면 설계도 어려워지고 설계된 하드웨어가 정상적으로 동작하는지 검증하는 것이 매우 어려워진다. 매우 좋은 테크닉이라 할 지라도 그 테크닉이 너무 복잡해서 하드웨어로 구현하기 어려우면 좋은 테크닉이라고 할 수 없다. 따라서 하드웨어로 구현해야하는 기술은 그 기술의 design complexity와 verification complexity를 함께 고려해야 한다. Design complexity와 verification complexity는 정량적으로 나타낼 수 없다. 이들은 정성적인 metric이다. 그럼 이걸 어떻게 측정해볼 수 없냐?라는 의문이 생기는데, HDL언어로 하드웨어를..

컴퓨터/Etc 2020.03.20

numpy, tensorflow vs pytorch

numpy vs pytorch - x, y, z 세 변수에 대해 학습하는 예시 생각 - 이때 gradient를 계산하기 위해 연산 그래프를 따라 미분 계산 - numpy는 모든 미분식을 직접 계산 후, 코드 작성 - pytorch는 backward()를 한번 호출해주면 끝 - 그리고 numpy는 GPU 사용이 불가능 (이부분이 크리티컬하다) tensorflow vs pytorch - 둘 다 GPU 사용 가능 - tensorflow는 연산 그래프를 먼저 만들고 실제 연산할 때 값을 전달하여 연산 결과를 얻음 - 연산 그래프를 만드는 부분과 연산하는 부분이 분리됨 - pytorch는 연산 그래프를 만듦과 동시에 값이 할당됨 - 연산 그래프와 연산을 분리해 생각할 필요가 없음 - tensorflow에 올라온 ..

컴퓨터/Etc 2020.01.07

Matrix Tiling

이번 포스팅에서는 GPU에서 매우 큰 matrix를 효율적으로 연산하게 해주는 최적화 기법인 matrix tiling에 대해서 알아보겠습니다. 이는 matrix-matrix multiplication의 효율을 높여주기 위해 사용됩니다. 우선 matrix tiling을 해주기 위해서는 input matrix 2개와 result matrix를 tiling해주어야 합니다. 그리고 난 뒤에는 이들을 tile단위로 multiplication을 해주어 result matrix에 저장해줍니다. 이걸 열과 행단위로 matrix 전체를 계산해주면 됩니다. 이에 대한 pseudo-code는 다음과 같습니다. 이렇게 tiled matrix multiplication을 해주면 전체 matrix가 GPU memory에 fit하..

컴퓨터/Etc 2019.11.19
반응형