멀코 3장 메모리 일관성
問題一覧
1
X
2
X
3
메모리 접근 순서가 프로그램을 짠데로 돌아가지 않기 때문이다.
4
_asm_mfence
5
out of order execution이 대표적인 이유이다.
6
L1 캐시 미스 나면 write buffer에 넣기 위해서이다.
7
X
8
A: 컴파일러, B: CPU
9
I/O 작업을 위해 나온 키워드
10
Type-E
11
CPU의 out of order 실행, 메모리의 접근이 순간적이 아니다., 멀티 코어에서는 옆의 코어의 out of order 실행이 관측된다.
12
아니다. Cache Line Size Boundary 문제가 일어난다. 메모리를 가져올 때 캐시라인을 통째로 가져오는데 메모리가 캐시 라인 두 개에 걸쳐있다면 두 번에 걸쳐서 가져와야 한다. 하지만 그 사이에 다른 스레드가 끼어들면 제대로 된 값이 나오지 않는다.
13
ff, ffffff00
14
메모리 일관성
15
X
16
X
17
O
18
X
19
X
20
O
21
O
22
O
23
atomic
24
X
25
volatile
26
O
27
X
28
아니다. 더 악질적인 버그다. atomic 사이에 있다고 atomic하게 돌아가는 것이 아니다. atomic 변수들끼리만 atomic하게 동작한다.
29
게임에서는 기본 자료구조만을 가지고 만들지 않는다. 보다 더 복잡한 자료구조를 이용하여 만들기 때문이다. atomic 자료구조는 기본 자료구조에만 해당한다.
30
X
31
X
32
바틀넥
33
우선순위 역전(Priority Inversion)
34
Convoying
35
Core보다 많은 수의 스레드를 생성했을 경우
36
O
37
O
38
X
39
O
40
X
41
무간섭(obstruction-free)
멀코 2장 멀티스레드 프로그래밍
멀코 2장 멀티스레드 프로그래밍
ユーザ名非公開 · 9問 · 2年前멀코 2장 멀티스레드 프로그래밍
멀코 2장 멀티스레드 프로그래밍
9問 • 2年前고법 2장 헌법
고법 2장 헌법
ユーザ名非公開 · 41問 · 2年前고법 2장 헌법
고법 2장 헌법
41問 • 2年前고법 3장 근로계약
고법 3장 근로계약
ユーザ名非公開 · 42問 · 2年前고법 3장 근로계약
고법 3장 근로계약
42問 • 2年前고법 4장 노동법의 역사
고법 4장 노동법의 역사
ユーザ名非公開 · 23問 · 2年前고법 4장 노동법의 역사
고법 4장 노동법의 역사
23問 • 2年前고법 6장 직장내 성희롱
고법 6장 직장내 성희롱
ユーザ名非公開 · 31問 · 2年前고법 6장 직장내 성희롱
고법 6장 직장내 성희롱
31問 • 2年前멀코 4장 동기화 연산과 cas
멀코 4장 동기화 연산과 cas
ユーザ名非公開 · 20問 · 2年前멀코 4장 동기화 연산과 cas
멀코 4장 동기화 연산과 cas
20問 • 2年前멀코 5장 non-blocking 알고리즘 - list
멀코 5장 non-blocking 알고리즘 - list
ユーザ名非公開 · 84問 · 2年前멀코 5장 non-blocking 알고리즘 - list
멀코 5장 non-blocking 알고리즘 - list
84問 • 2年前멀코 5-2장 배경이론
멀코 5-2장 배경이론
ユーザ名非公開 · 61問 · 2年前멀코 5-2장 배경이론
멀코 5-2장 배경이론
61問 • 2年前1. 컴퓨터 그래픽스 개요 (컴그)
1. 컴퓨터 그래픽스 개요 (컴그)
ユーザ名非公開 · 34問 · 2年前1. 컴퓨터 그래픽스 개요 (컴그)
1. 컴퓨터 그래픽스 개요 (컴그)
34問 • 2年前2. 2차원 그래픽스의 기본 요소 (컴그)
2. 2차원 그래픽스의 기본 요소 (컴그)
ユーザ名非公開 · 30問 · 2年前2. 2차원 그래픽스의 기본 요소 (컴그)
2. 2차원 그래픽스의 기본 요소 (컴그)
30問 • 2年前3. 2차원 그래픽스 변환 (컴그)
3. 2차원 그래픽스 변환 (컴그)
ユーザ名非公開 · 15問 · 2年前3. 2차원 그래픽스 변환 (컴그)
3. 2차원 그래픽스 변환 (컴그)
15問 • 2年前4. 2차원 그래픽스의 윈도우와 뷰포트 (컴그)
4. 2차원 그래픽스의 윈도우와 뷰포트 (컴그)
ユーザ名非公開 · 16問 · 2年前4. 2차원 그래픽스의 윈도우와 뷰포트 (컴그)
4. 2차원 그래픽스의 윈도우와 뷰포트 (컴그)
16問 • 2年前멀코 6장. 병렬 알고리즘 - QUEUE
멀코 6장. 병렬 알고리즘 - QUEUE
ユーザ名非公開 · 26問 · 2年前멀코 6장. 병렬 알고리즘 - QUEUE
멀코 6장. 병렬 알고리즘 - QUEUE
26問 • 2年前멀코 7장. STACK, SKIP-LIST
멀코 7장. STACK, SKIP-LIST
ユーザ名非公開 · 42問 · 2年前멀코 7장. STACK, SKIP-LIST
멀코 7장. STACK, SKIP-LIST
42問 • 2年前멀코 8장. 병렬 라이브러리
멀코 8장. 병렬 라이브러리
ユーザ名非公開 · 77問 · 2年前멀코 8장. 병렬 라이브러리
멀코 8장. 병렬 라이브러리
77問 • 2年前고법 7장. 임금의 이해
고법 7장. 임금의 이해
ユーザ名非公開 · 46問 · 2年前고법 7장. 임금의 이해
고법 7장. 임금의 이해
46問 • 2年前고법 9장. 인사명령과 징계
고법 9장. 인사명령과 징계
ユーザ名非公開 · 21問 · 2年前고법 9장. 인사명령과 징계
고법 9장. 인사명령과 징계
21問 • 2年前고법 11장. 노동조합법
고법 11장. 노동조합법
ユーザ名非公開 · 45問 · 2年前고법 11장. 노동조합법
고법 11장. 노동조합법
45問 • 2年前컴그 7장. 3차원 객체의 모델링
컴그 7장. 3차원 객체의 모델링
ユーザ名非公開 · 13問 · 2年前컴그 7장. 3차원 객체의 모델링
컴그 7장. 3차원 객체의 모델링
13問 • 2年前컴그 8장. 은면의 제거
컴그 8장. 은면의 제거
ユーザ名非公開 · 9問 · 2年前컴그 8장. 은면의 제거
컴그 8장. 은면의 제거
9問 • 2年前問題一覧
1
X
2
X
3
메모리 접근 순서가 프로그램을 짠데로 돌아가지 않기 때문이다.
4
_asm_mfence
5
out of order execution이 대표적인 이유이다.
6
L1 캐시 미스 나면 write buffer에 넣기 위해서이다.
7
X
8
A: 컴파일러, B: CPU
9
I/O 작업을 위해 나온 키워드
10
Type-E
11
CPU의 out of order 실행, 메모리의 접근이 순간적이 아니다., 멀티 코어에서는 옆의 코어의 out of order 실행이 관측된다.
12
아니다. Cache Line Size Boundary 문제가 일어난다. 메모리를 가져올 때 캐시라인을 통째로 가져오는데 메모리가 캐시 라인 두 개에 걸쳐있다면 두 번에 걸쳐서 가져와야 한다. 하지만 그 사이에 다른 스레드가 끼어들면 제대로 된 값이 나오지 않는다.
13
ff, ffffff00
14
메모리 일관성
15
X
16
X
17
O
18
X
19
X
20
O
21
O
22
O
23
atomic
24
X
25
volatile
26
O
27
X
28
아니다. 더 악질적인 버그다. atomic 사이에 있다고 atomic하게 돌아가는 것이 아니다. atomic 변수들끼리만 atomic하게 동작한다.
29
게임에서는 기본 자료구조만을 가지고 만들지 않는다. 보다 더 복잡한 자료구조를 이용하여 만들기 때문이다. atomic 자료구조는 기본 자료구조에만 해당한다.
30
X
31
X
32
바틀넥
33
우선순위 역전(Priority Inversion)
34
Convoying
35
Core보다 많은 수의 스레드를 생성했을 경우
36
O
37
O
38
X
39
O
40
X
41
무간섭(obstruction-free)