diff --git a/README.md b/README.md index 06a4dc68eb1eeb21c3e3811450dab7267ccf8d48..33b4c563f54ca6c69034c9f3f209c798f9e460f8 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ ### name : 김나영 ### id : 202126850 -## **Lecture 01** +## **Lecture 01** [1.04] ### Linux command @@ -110,7 +110,7 @@ int main() * 현재 디렉토리 아래의 a.out 파일을 실행시킴 * Hello World! 출력 -## **Lecture 02** +## **Lecture 02** [1.05] ### Linux command 1. echo @@ -262,7 +262,7 @@ int main() * b~ : block device * l~ : link -## **Lecture 03** +## **Lecture 03** [1.06] ### 프롬프트 색상 변환 ``` @@ -343,7 +343,7 @@ source .profile * 글자 끝에 #를 삽입하면 줄 구분이 가능 * `을 소스코드의 시작과 끝에 세번씩 쓰면 소스코드를 입력할 수 있음 -## **Lecture 04** +## **Lecture 04** [1.10] ### Linux command 1. sh @@ -514,7 +514,7 @@ in_b = in_a >> 2; ``` shift 연산 이후 비어있는 비트에 1이 채워짐 -## **Lecture 05** +## **Lecture 05** [1.11] ### Linux Command 1. ln 옵션 원본파일 대상파일(대상 디렉토리) @@ -747,7 +747,7 @@ Call : 0 * define * 컴파일 전처리단계에서 글자를 치환해주는 방식 -## **Lecture 06** +## **Lecture 06** [1.12] ### Linux Command 1. clear @@ -995,7 +995,7 @@ In addValue C -300 : 140732089039380 7ffebe2cfa14 * 연산 후 c = -300 * 함수를 int형으로 선언하고 return c; 를 통해 c 값(-300)을 메인 함수로 리턴하여 c = addValue(a,b,c); 에서 메인함수의 변수 c에 값을 저장 -## **Lecture 07** +## **Lecture 07** [1.13] ### Linux Command 1. cp (복사하고자 하는 파일의 경로) (바꿀 파일의 이름) @@ -1230,7 +1230,7 @@ int main() #endif ``` -## **Lecture 08** +## **Lecture 08** [1.17] ### Linux Command 1. ^(위 명령에서 잘못 입력한 문자)^ (바꿀 문자) @@ -1388,7 +1388,7 @@ int main() #define eprintf(format, ...) fprintf (stderr, format __VA_OPT__(,) __VA_ARGS__) ``` -## **Lecture 09** +## **Lecture 09** [1.18] ### Linux Command 1. cc -g @@ -1516,7 +1516,7 @@ int main() } ``` -## **Lecture 10** +## **Lecture 10** [1.19] ### Linux Command 1. ulimit @@ -1618,28 +1618,29 @@ typedef fx_s17_14 fixed; * 초당 부동소수점 연산이라는 의미로 컴퓨터가 1초동안 수행할 수 있는 부동소수점 연산의 횟수가 기준 * 연산식은 FLOPS = cores x clock x (FLOPS/cycle) +### ARM 9 - CPI + + ### ARM Compile (optimization) - + * 숫자가 높아질수록 세부적인 최적화 * 최적화 후 코드가 변경되기 때문에 디버깅 불가 ### gprof - GNU Profiling * gprof - display call graph profile data * Compile with -pg option - * ``` cc -pg -Wall test.c -o test``` + * ``` cc -pg -Wall test.c ``` * Execute program and generate gmon.out file - * ```test``` + * ```a.out ``` * Execute gprof - * ```gprof test gmon.out``` -* 사진추가 + * ```gprof a.out gmon.out ``` +*  * 첫번째 열을 보면 총 걸린 시간의 % 확인 가능 * self를 통해 함수 안에서 발생한 연산 시간 확인 가능 * gprof할 때 충분한 call이 필요하고 함수 호출은 굉장히 비쌈 * 10~20%의 오차가 항상 발생 - * 사진추가 - * diff를 통해 비교해 본 결과 64bit가 32bit 보다 빠르다는 것을 확인 가능(사진은 32bits) -## **Lecture 11** +## **Lecture 11** [1.20] ### rgba.c 코드 ```