2008-04-01ãã1ã¶æéã®è¨äºä¸è¦§
ååæ±ãã漸åå¼ã«é çªã«å¤ãä»£å ¥ãã¦ç¢ºçãå ·ä½çã«æ±ãããããã以åã¨åãããã«ã¯ããã¦å ¨é ç¹ããã©ã£ã確çã«ç´ãã¦ã°ã©ãã«ãããåæ°ã大ãããªãã¨ãå¶æ°åã¨ãã®æ¬¡ã®å¥æ°åãåã確çã«ãªããã¾ãã2ã¤åã®7/9ã®ç¢ºçã«ãªãããã§ããã ããã°ã©â¦
åºå ç·å°å ¬åã«ã¦ã åå è ã¯1000人ã»ã©ãä¸è¬ç·å10kmã¯458人ã¨ã³ããªã¼ã¨å°è¦æ¨¡ã 10kmã¯2.3kmã®å ¬åå ã³ã¼ã¹ã4å¨ãããããã åä»ããã¨å®èµ°è¨¼ããã¿ã¤ã ãèªåã§è¨å ¥ã¨ããã®ã¯ä»ã¾ã§ããã£ãããã¿ã¤ã ã¯èªåã§è¨ãã°ããããããã ã¨é ä½ãããããªâ¦
åå¤ãªç¶æ ãä¸æã«è¡¨ãããã«æ¬¡ã®ããã«ããããç¾å¨ã®ç¹ã¯0ã«æã£ã¦ããããã«ååãæ½ãããã®ããã§ã0ãåºå®ããå転ã»å¯¾ç§°å¤æãæ½ãã¦ãç¶æ ã表ãæ´æ°ãæãå°ãããªããã®ãæ£è¦ã®è¡¨ç¾ã¨ãããç¶æ ã表ãæ´æ°ã¨ã¯åé ç¹ããã§ã«ãã©ã£ã¦ããã°ãã®â¦
ãã®åé¡ã¯ã ã¨ãã漸åå¼ã解ãã°ããã ããã§ãsiã¯ç¶æ ã表ãã¦ãããpsi,tã¯æå»tã«ç¶æ siãåã確çãqsiâsjã¯ç¶æ siããsjã«é·ç§»ãã確çã§ããã ç¶æ ã¨ã¯ããã§ã«ãã©ã£ãç¹ã®éåã¨ä»ã®ç¹ã®ä½ç½®ã®çµåãã§ãããç¶æ ã¯æ°å¤ãåå¨ãããã®å漸åå¼â¦
ä»å¹´ã®äº¬å¤§2åç®ã æ£åé¢ä½ABCDãèãããç¹Pã¯æå»0ã§ã¯é ç¹Aã«ä½ç½®ãã1ç§ãã¨ã«ããé ç¹ããä»ã®3é ç¹ã®ããããã«ãçãã確çã§åãã¨ããããã®ã¨ããæå»0ããæå»nã¾ã§ã®éã«ã4é ç¹AãBãCãDã®ãã¹ã¦ã«ç¹Pãç¾ãã確çãæ±ããããã ãnã¯1以ä¸ã®â¦
10é²å¤æï¼2ï¼ ååã¯1ããããã¤è¨ç®ãã¦ãããããããã«ããã§ã¯é ãã®ã§16ããããã¤ã«åºåã£ã¦10é²è¨ç®ãè¡ã£ãã¨ããã0.1ç§ãããã«ãªã£ãã ããããããã§ãGPUã¯ä½¿ããªãã
æè¿ãã£ããèµ°ã£ã¦ããªãã£ãããæ¥é±ã¬ã¼ã¹ãããã®ã§ãåæ5kmãæ¥æ6kmãèµ°ã£ã¦ãä»æ¥ã¯ãã©ãã¯ãä¹ ãã¶ãã«èµ°ã£ã¦ã¿ããã°ã©ã¦ã³ãæ´åã®äººã®ã¿ã§ã貸åç¶æ ã 1000mã4å30ç§ã§å»ãã§ã¿ããããã£ã±ããã©ãã¯ãä¸äººã§èµ°ãã®ã¯ç²¾ç¥çã«ç¡çãä»æ¥ã¯ç¹â¦
ã¿ã¤ãã«ãå¤ããã 10é²å¤æï¼1ï¼ è¨ç®ã¯2é²æ°ã§è¡ãã表示ããã¨ãã«10é²æ°ã«ç´ãã 2100000ã10é²æ°ã«ããã®ã«ã1ã10ä¸å2åããã¨é常ã«ç°¡åã«å®è£ ã§ãããé©å½ãªæ¡ã§åºåã£ã¦ï¼ä¸ã®ã³ã¼ãã¯4æ¡ï¼ããããã«ãããã£ã¦ã2åã¨ã¤ã³ã¯ãªã¡ã³ããç¹°ãè¿ãâ¦
åã«å¹ççãªã¹ãä¹ã®è¨ç®ã¨ããã®ããã£ãããããã¯å¤é å¼ã®è¨ç®ããããã£ãããã§ããã ä¾ãã°ã ã¨ããè¨ç®ãããããã 代æ°çã«ç°¡åã«è¨ç®ã§ããããããã¯ããã¨ãã¦ã次ã®ããã«ãªããä»åã¯ãã¯ã¹ãã£ã2æç¨æããã®ã§ãä¹ ãã¶ãã«ãã«ã½ã¼ã¹ãâ¦
ãªã«ãèããã«ç´ ç´ã«GLSLã§GPUã«è§£ããã¦ã¿ãã ãããããã¼ã¿ãç¨æããã const int nMax = 100000; const int nWidth = 512; const int nHeight = 256; const int nData = nWidth * nHeight * 4; float *data = new float[nData]; for(int i = 0; i datâ¦
ãç¬ãã«ã¯é常ã«ãã¨ãã¦ããä¸çã®ããã¢ããã¨ããè¨èã¯æè¿ããç®ã«ãããªãã¨ã¯æã£ã¦ãããããã®éã¯ããã¦ãã¬ãã§è¦ãã°ããã ãããããããã¯æ¬äººã§ã¯ãªãã£ããããã 3ã®åæ°ã5ã®åæ°ãã¾ãã¯3ã®ã¤ãæ°ããå¤å®ããããããããã°ã©ã ã§æ¸ãâ¦
以ä¸ã®è©±ã¯ãNVIDIAã®G8ã·ãªã¼ãºåºæã®è©±ã§ããããã ãæ¨å®å®è¡æéã§ã½ã¼ããã¦GPUã«æããã¨ããã®ã¯æããã©ã®GPUã§ãéç¨ãããã¯ããã¯ã ã¨æãããã ã¹ã¬ãã群 次ã®ããã«ãã¯ã¹ãã£ãç¨æãã int bit = atoi(argv[1]); int mask = 1 const int nWâ¦
foræ ä¾ãã°ã128*128ã®ãã¼ã¿ãç¨æãã¦ãããã«ãªãããã®å¤ãå ¥ã£ã¦ãããã·ã§ã¼ãããã°ã©ã ã®ã»ãã¯ã0ãªããã®ã¾ã¾æãã¦ããã以å¤ãªãéãè¨ç®ï¼1000ä¸åã®ç¹°ãè¿ãè¨ç®ï¼ãããããã«ãªã£ã¦ããã uniform sampler2DRect texUnit0; // datauniformâ¦
é å é åã¯æ¬¡ã®ããã«å®£è¨ãã¦ä½¿ãã int a[10];é¢æ°ã«å¼ã渡ãã«ã¯æ¬¡ã®ããã«ããã void f(in int a[10]);f(a);åã«inãã¤ãã¨ãå ¥åã outãã¤ãã¨ãåºåã inoutãã¤ãã¨ãå ¥åºåã«ãªãã 次ã®ä¾ã¯ã an = a0 + ... + an-1 s = a0 + ... + an ããa0ãâ¦