sse, mmx, avx °°Àº cpu ³»Àå ¸í·É¾î´Â ¾ðÁ¦ ¾î¶»°Ô ¾²´Â °Ç°¡¿ä???

   Á¶È¸ 13725   Ãßõ 0    

cpu에는 mmx, sse, avx 등 다양한 명령어가 있잖아요.
cpu가 새로 개발되면 새로운 명령어가 추가되어 나오구요.

저는 데스크탑에 amd를 써왔는데요.
 amd cpu에는 인텔의 sse3와 sse4가 없어서 인텔의 명령어만 지원하는 게임에서는 성능이 덜 나오는 경우도 많았습니다.
그럼 mmx나 sse 같이 cpu에 포함된 명령어는 언제 쓰는건가요?
mmx나 sse같은 명령어를 쓰겠다고 선언하면 그때 쓰는 건가요?

예를 들어 C언어로 소스를 짠다고 했을때요.

include <studio.h> 
int main(void)
{
printf("hello world! \n");
}

어떤 소스가 있다면 cpu에 mmx나 sse같은 명령어가 있다면 자동으로 sse명령어 셋이 동작해 효율적으로 동작해 처리 속도를 올리는 건가요?

아니면 위의 소스에 sse명령어를 쓰고 싶다면 소스에서 따로 선언해야 동작하는 건가요?

cpu에는 다양한 명령어 셋이 있다는데 c언어나 비쥬얼 베이직 소스짤때 한번도 써본적이 없어서 궁금해서 여쭈어봅니다.



ªÀº±Û Àϼö·Ï ½ÅÁßÇÏ°Ô.
ayumu270 2013-02
È¿À²ÀûÀÎ ÇÁ·Î±×·¡¹ÖÀ» À§Çؼ­´Â ÇØ´ç ¸í·É¾î¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Â Àû´çÇÑ ¶óÀ̺귯¸®¸¦ »ç¿ëÇϽô °ÍÀÌ »ý»êÀûÀÌÁö¿ä.

ÀνºÆ®·°¼Ç ¸î °¡Áö¸¦ Á÷Á¢ ÇÁ·Î±×·¡¹Ö¿¡ »ç¿ëÇϱâ À§Çؼ­¶ó¸é(ÁÖ·Î C/C++·Î´Â ¾î·Á¿î low level ó¸®), VC++¿¡¼­´Â

__asm
{
    ; ¸í·É¾îµé
}

°°Àº Çü½ÄÀ¸·Î C ÇÔ¼ö ¾È¿¡¼­ »ç¿ëÇϰųª, NASM ȤÀº MASMÀ» »ç¿ëÇÏ¿© ÀÛ¼ºÇÑ ¾î¼Àºí¸® ¼Ò½º¸¦ ¸µÅ©ÇÏ¿© »ç¿ëÇÒ ¼ö ÀÖÁö¿ä.

MMX, SSE°°Àº ºÎºÐ±îÁö Á÷Á¢ ´Ù·ç¾î º¸Áö´Â ¸øÇßÀ¸³ª, ¾î¶°ÇÑ Ã³¸®°úÁ¤À» ÅëÇؼ­, ÀÌ·¯ÇÑ ±â´ÉÀ» »ç¿ëÇÏ°Ú´Ù´Â flag¸¦ ¼¼¿ì°í, ¸í·ÉÀ» ¼öÇàÇÏÁö ¾Ê´Â°¡ »ý°¢ÇÕ´Ï´Ù.
1. ¾î¼Àºí·¯·Î Á÷Á¢ ¸¶ÀÌÅ©·Î Äڵ带 »ç¿ëÇÑ´Ù.

2. ÄÄÆÄÀÏ·¯ÀÇ ¿É¼Ç¼³Á¤À» ÅëÇØ ÀÚµ¿À¸·Î »ç¿ëÇϵµ·Ï ÇÑ´Ù.

µÎ°¡Áö ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù.
¹Úµ¿±Ç 2013-02
¸®´ª½º °è¿­·Î ÇÁ·Î±×·¥À» ÄÄÆÄÀÏ ¼³Ä¡ Çغ¸¼Ì´Ù¸é ´À³¦ÀÌ ¿À½Ç°Å¶ó º¾´Ï´Ù.
¼Ò½ºÄڵ带 Á÷Á¢ ÄÄÆÄÀÏÇÏ¿© ¼³Ä¡ÇÒ °æ¿ì º¸Åë
configure ¶ó´Â °úÁ¤À» ¸ÕÀú ½ÇÇà ÇØÁÖ°í make ÇØÁÝ´Ï´Ù.
À̶§ configure ¶ó´Â °ÍÀÌ ÇöÀç ÀÚ½ÅÀÇ ½Ã½ºÅÛÀÇ È¯°æÀ» ºÐ¼®Çؼ­ ÃÖ»óÀÇ makefileÀ» ¸¸µé¾î ³»ÁÒ.
ÇÊ¿äÇÑ ¶óÀ̺귯¸®³ª ¶óÀ̺귯¸®ÀÇ »ç¿ë°¡´É ¸ðµåµîÀ» ¼³Á¤ÇØÁÖ´Â °ÍÀÌÁÒ.
±× makefile À» ±â¹ÝÀ¸·Î ¼Ò½ºÄڵ带 ÄÄÆÄÀÏ ÇÏ°í ºôµåÇÏ¿© ¾²´Â °ÍÀÌ ÃÖÀûÀ¸·Î ¾²´Â °ÍÀÌ°í ±×·± °Å ¾øÀÌ
±×³É ¼Ò½ºÄڵ带 ÄÄÆÄÀÏÇÏ¿© ºôµåÇϸé ÀϹÝÀûÀÎ ¹«³­ÇÑ (¼º´ÉÀº ¶³¾îÁö´Â) ¶óÀ̺귯¸®¸¦ °¡Áö°í ½ÇÇàÆÄÀÏÀ» ¸¸µì´Ï´Ù.
¹Ú°Ç´Ô ¸»¾¸Ã³·³ ¾Æ¿¹ asm ·¹º§¿¡¼­ ¹Ù·Î ¾²´Â °Íµµ °¡´ÉÇÑ ¹æ¹ýÀÌÁÒ.
±è¼®Áß 2013-02
±×·¸±º¿ä. °¨»çÇÕ´Ï´Ù.


QnA
Á¦¸ñPage 3517/5686
2014-05   4981498   Á¤ÀºÁØ1
2015-12   1517563   ¹é¸Þ°¡
2009-07   5698   ¾çÇØ¿ø
2015-03   5698   Â÷Æò¼®
2017-06   5698   ´ÃÆĶõ
2014-09   5698   Á¤ÀºÁØ1
2015-02   5698   Àü¼³¼ÓÀǹ̡¦
2006-01   5698   ³ëÇϼ®
2013-05   5698   ±è1Á¤2¿í
2005-07   5698   ¹èÁ¤ÇÑ
2006-08   5698   À̹®Èì
2007-10   5698   À¯»ç¿ë
2005-11   5698   ±è°Ç¿ì
2012-08   5698   ÀÌÁöÆ÷Åä
2017-03   5698   ±è°Ç¿ì
2017-03   5698   cjsrbc
2006-04   5698   ±èÁø¼ö
2006-04   5698   ÀÌ»óÇö
2008-04   5698   ÀåÀ±¼®
2015-02   5698   ÃÖÀç¿ø99
2005-09   5698   º¯±âö
2008-04   5698   Çѵ¿ÈÆ