๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

์ „์ฒด ๊ธ€48

int main ( int argc, char ** argv ) argc (argument count), argv (argument vector) int main () int main ( void ) int main ( int argc, char ** argv ) argc, argv๋Š” ๋ช…๋ นํ”„๋กฌํ”„ํŠธ์—์„œ ๋ช…๋ น์–ด๋ฅผ ์ณค์„ ๋•Œ ์ธ์ž๋ฅผ ๋‹ด์„ ๋ฐฐ์—ด์ด๋‹ค. argc : the number of strings pointed to by argv (number of arguments + 1) argv : the array of arguments #include int main(int argc, char** argv) { std::cout 2015. 3. 9.
์ „์ฒ˜๋ฆฌ ์ง€์‹œ์ž Preprocessor Directive #include #include #include ์ „์ฒ˜๋ฆฌ ์ง€์‹œ์ž #include๋ฅผ ํ†ตํ•˜์—ฌ ํ•ด๋‹น ํ—ค๋” ํŒŒ์ผ์˜ ์ฝ”๋“œ๋ฅผ ๋ชจ๋‘ ๊ฐ€์ ธ์™€ ํ˜„์žฌ ์†Œ์Šค์— ์‚ฝ์ž…ํ•˜๋„๋ก ์ง€์‹œํ•œ๋‹ค. ํ—ค๋” ํŒŒ์ผ์€ ๋ณดํ†ต ๋‹ค๋ฅธ ํŒŒ์ผ์— ๊ตฌํ˜„๋œ ํ•จ์ˆ˜๋“ค์˜ ํ•จ์ˆ˜ ์„ ์–ธ๋ฌธ์„ ๋‹ด๊ณ  ์žˆ์–ด์„œ ๊ทธ ํ•จ์ˆ˜๋“ค์„ ์ฐธ์กฐํ•˜์—ฌ ํ˜ธ์ถœํ•  ์ˆ˜ ์žˆ๋„๋ก ์ปดํŒŒ์ผ๋Ÿฌ์— ์ •๋ณด๋ฅผ ์•Œ๋ ค์ฃผ๋Š” ์šฉ๋„๋กœ ํ™œ์šฉ๋œ๋‹ค. ํ•จ์ˆ˜ ์„ ์–ธ๋ฌธ์€ ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ํฌ๋งท์ด ์–ด๋–ป๊ฒŒ ๋˜๋Š”์ง€๋ฅผ ์•Œ๋ ค์ค„ ๋ฟ์ด๊ณ  ํ•ด๋‹น ํ•จ์ˆ˜์˜ ์‹ค์ œ ๊ตฌํ˜„ ์ฝ”๋“œ๋Š” ๋”ฐ๋กœ ์กด์žฌํ•œ๋‹ค. stdlib.h : Stadard Library (ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ) ๋ฌธ์ž์—ด ๋ณ€ํ™˜, ์˜์‚ฌ ๋‚œ์ˆ˜ ์ƒ์„ฑ, ๋™์  ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ๋“ฑ์˜ ํ•จ์ˆ˜๋“ค์„ ํฌํ•จํ•œ๋‹ค. stdio.h : Standard Input/Output library (ํ‘œ์ค€ ์ž…์ถœ๋ ฅ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ) ๋ชจ๋“  C ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ํ•จ์ˆ˜(ํŒŒ์ผ ์กฐ์ž‘, ์ฝ˜.. 2015. 3. 9.
[tbd] Jos Stam, Stable Fluids (1999) semi-Lagrangian simulation method Fourier transform technique only works given periodic boundaries. sparse linear solver based simulation - work with any boundary conditions assume: fuild is bounded by rectangle http://www.dgp.toronto.edu/people/stam/reality/Talks/FluidsTalk/FluidsTalk_files/v3_document.htm 1. Navier-Stokes Equation + velocity should conserve mass ๋‘ ์‹์€ ๋น„์Šทํ•œ ํ˜•ํƒœ๋ฅผ ์ง€๋…”์ง€๋งŒ ๋‘๋ฒˆ์งธ ์‹์˜ ๊ฒฝ์šฐ, ๋น„์„ .. 2015. 3. 6.
[tbd] ๋ณ‘๋ ฌ ์ปดํ“จํŒ… Parallel Computing CPU์™€ GPU ๊ฐ„์˜ ์„ฑ๋Šฅ ์ฐจ์ด๊ฐ€ ์กด์žฌํ•˜๋Š” ์ด์œ ๋Š” ๋‘ ๊ฐ€์ง€ ์นฉ์ด ๊ทผ๋ณธ์ ์œผ๋กœ ์ƒ์ดํ•œ ๋ชฉ์ ์„ ์—ผ๋‘์— ๋‘๊ณ  ์„ค๊ณ„๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. CPU๋Š” ์ˆœ์„œ๋Œ€๋กœ ์‹คํ–‰๋˜๋Š” ์ผ๋ จ์˜ ๋ช…๋ น์–ด๋ฅผ ์ฒ˜๋ฆฌํ•˜๋„๋ก ์„ค๊ณ„๋˜์—ˆ๋‹ค. ๋ฉ€ํ‹ฐ์“ฐ๋ ˆ๋”ฉ(Multithreading) ๊ธฐ๋Šฅ๊ณผ ๋‹ค์ค‘ ์ฝ”์–ด์˜ ์ถœํ˜„์œผ๋กœ CPU์—์„œ๋„ ์ƒ๋‹นํ•œ ์ˆ˜์ค€์˜ ๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‚˜, ์—”๋น„๋””์•„๋‚˜ AMD๊ฐ€ ๋น„๋””์˜ค ์ธ์ฝ”๋”ฉ ๊ฐ™์€ ํŠน์ • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๋“ค์— ๋Œ€ํ•ด ๊ฐ–๋Š” ๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ์— ๋น„ํ•˜๋ฉด ๋ฏธ๋ฏธํ•œ ์ˆ˜์ค€์ด๋‹ค. ์›๋ž˜ ์ˆ˜ ์ฒœ ๊ฐœ์˜ ๋‹ค๊ฐํ˜•์„ ๊ทธ๋ฆฌ๊ณ  ์‹ค๊ฐ๋‚˜๋Š” ์ปดํ“จํ„ฐ ๊ทธ๋ž˜ํ”ฝ์„ ์œ„ํ•ด ์งˆ๊ฐ์„ ๋งคํ•‘ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋˜๋˜ GPU๋Š” ๋™์‹œ์— ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์ž‘์—…์„ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค๊ณ„๋œ ๋ณ‘๋ ฌ ํ”„๋กœ์„ธ์„œ์ด๋‹ค. ๊ฐœ๊ฐœ GPU ํ”„๋กœ์„ธ์„œ ์ฝ”์–ด๋Š” CPU ์ฝ”์–ด๋ณด๋‹ค ๋” ๋‹จ์ˆœํ•˜๊ณ  ๋œ ๊ฐ•๋ ฅํ•˜์ง€๋งŒ ์ฝ”์–ด i7 960 ์ƒ์—๋Š” ๊ฒจ์šฐ 4๊ฐœ์˜ ์ฝ”์–ด๊ฐ€ ๋“ค์–ด์žˆ.. 2015. 3. 5.