Sense Wide

컴퓨터 구조 / Computer Architecture


1. 컴퓨터의 세 가지 구성요소 = CPU + Memory + IO devices


  ㄴ CPU는 Data들이 다니는 길인 Datapath와 Data를 관리를 위한 operation을 선택하는 Controller가 있다.

  ㄴ 폰 노이만은 CPU와 각종 프로그램이 내장된 Memory로 컴퓨터를 만들 수 있다고 하였다.

  ㄴ 이 Architecture를 폰 노이만 Architecture라고 하며, 현대의 컴퓨터까지 적용되고 있다.


2. Old-School Machine Structures – 컴퓨터 Hierarchy를 나타내고 있다.


ㄴ Compiler – High level language를 Low level language (Machine language)까지 변환.

ㄴ Assembler – Assembler language를 Low level language로 변환.

ㄴ Interpreter – compile 하지 않고 바로 기계어로 변환 (ex. Script 언어)

ㄴ ISA (Instruction set architecture) – 하드웨어와 소프트웨어간 명령어의 집합, 프로그램 명령어 정의함.


3. Abstraction – 세부사항은 간단하게 하거나 숨기고, 주요한 작동만 설명하는 것을 말한다.

ㄴ 장점 : 복잡한 내용을 숨김으로써 명료하고 간단하게 전달할 수 있음.

ㄴ 예시 : 값을 받을 때, 값이 어디 어디부분을 거친다는건 생략, 그냥 Input 을 받는다라고 설명함


4. 6 Great Ideas in Computer Architecture


ㄴ Levels of Representation/Interpretation – Compiler, Assembler등을 통해 언어가 작동하는 방법을 설명

ㄴ Moore’s Law – 18 개월 마다 Transistor 개수가 2배가 된다.

ㄴ Memory Hierarchy – 메모리의 속도 순으로 계층을 그려 놓았다.

–  Principle of locality : 시간/공간적으로 가까이 있는 장치가 또 사용될 확률이 높다.

ㄴ Parallelism – 프로세스를 병렬적으로 처리 함으로 써 속도를 높인다. Pipe-lined 되어있는 구조.

ㄴ Performance measurement and Improvement – 성능 측정방법

ㄴ Dependability via Redundancy – 많은 데이터의 양이 더 믿을 만한 추측을 할 수 있게한다.


5. Amdahl’s L:aw – CPU 코어가 x배가 된다고 해도 Performance ratio가 항상 x배가 되진 않음.


Performance increase ratio=  1/(x+ (1-x)/N)  ,x:Ratio of code that is sequential,N∶Number of Cores

Performance ratio 는 코드의 Sequential 한 부분에 영향을 받으며, 성능을 높이기 위해서는 이 Sequential 한 부분을 Parallel 하게 바꿔주는 작업이 필요하다. 이것을 Parallel Programming 이라고 한다.


6. Defining Performance : 성능을 측정하는 방법은 크게 두 가지가 있다.


- Execution time (= elapsed time, response time) – 정해진 Task를 수행하는데 걸리는 시간

- Bandwidth time (= though put time) – 주어진 시간당 처리할 수 있는 데이터 량

   (ex – 대형 검색 사이트에서는 data가 enormous해 정해져있지 않으므로 Bandwidth time이 중요하다)


7. CPU time : Response time보다 작은 의미로, Response Time중 CPU가 관여한 시간을 의미한다.


   ㄴ User CPU time : CPU time중 유저가 사용한 시간, System CPU time : CPU 가 사용한 시간



수업을 듣는걸 정리해 놓으면서 이 쪽 포스팅을 진행할 예정입니다.
주간에 들은 내용을 한 페이지 정도로 정리해 놓은 거라 내용은 많이 부족합니다.

이 와 관련된 내용 질문/대화를 환영합니다. 같이 공부합시다~


profile

Sense Wide

@June_Kim

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!