INtime Tech

INtime Top


INtimeÀ¸·Î Intel IPP ¶óÀ̺귯¸®¸¦ »ç¿ëÇÏ´Â ¹æ¹ý


 

óÀ½¿¡

¿©±â¿¡¼­´Â INtime·Î Intel(R) IPP(Integrated Performance Primitives)¸¦ »ç¿ëÇÏ´Â »ùÇÿ¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù.

 

Intel Integrated Performance Primitives(ÀÎÅÚ IPP) ´Â À̹ÌÁö ó¸®, ½ÅÈ£ ó¸®, JPEG ÄÚµù, ºñµð¿À·ÄÚµù µî¿¡ Æø³ÐÀº ±â´ÉÀ» Á¦°øÇÏ´Â ¸ÖƼ¹Ìµð¾î·µµ¼­°üÀÔ´Ï´Ù. º¤ÅÍ, Åë°è ¿¬»ê, ½ÅÈ£ ÇÊÅ͸µ, Ǫ¸®¿¡ º¯È¯, À̹ÌÁö/JPEG ¾ÐÃà ¹× Ä®¶ó º¯È¯ÀÇ Áß¿äÇÑ ÇÔ¼ö´Â, OpenMP¸¦ »ç¿ëÇØ ³»ºÎÀûÀ¸·Î ½º·¹µåÈ­ µÇ°í ÀÖ½À´Ï´Ù.

IPPtest »ùÇÿ¡ ´ëÇØ

 IPPtest »ùÇà ÇÁ·ÎÁ§Æ®ÀÇ ´Ù¿î·Îµå        

     IPPtest »ùÇà ÇÁ·ÎÁ§Æ® ´Ù¿î·Îµå:fileIPPtest.zip (367 KB)

 

ÀÌÇÏÀÇ Á¦Ç°À» ÇÊ¿ä·Î ÇÕ´Ï´Ù£º

  • Intel(R) C++ Compiler(Intel(R) C++ Integrations in Microsoft Visual Studio)
  • Intel(R) Integrated Performance Primitives Version 5.3
  • INtime 3.0 SDK

IPPtest »ùÇà °³¿ä

IPPtest ´Â Intel(R) Integrated Performance PrimitivesÀÇ ±â´ÉÀÇ ÀϺÎÀÎ µ¥ÀÌÅÍ ¾ÐÃà±â´ÉÀ» ÀÌ¿ëÇÏ´Â »ùÇÃÀÔ´Ï´Ù. º»»ùÇÿ¡´Â Visual Studio 2005, Intel(R) C++ Compiler ¹× Intel(R) C/C++ CompilerÀÇ ±â´ÉÀÎ, Intel(R) C++ Integrations in Microsoft Visual Studio°¡ ÇÊ¿äÇÕ´Ï´Ù. °¢°¢ÀÌ ¿Ã¹Ù¸£°í ÀνºÅç µÈ »óÅ¿¡ ´ëÇϰí, ÇÁ·ÎÁ§Æ® ¼Ö·ç¼Ç ÆÄÀÏ"IPPtest.sln"¸¦ ¿­¸é, ÇÁ·ÎÁ§Æ® ÀͽºÇ÷η¯»ó¿¡ ÀÌÇÏ¿Í °°ÀÌ Ç¥½ÃµË´Ï´Ù:

ipp00.JPG
  • IPPtest ÇÁ·ÎÁ§Æ®(INtime RT Process ÇÁ·ÎÁ§Æ®)
    • Intel Performance PrimitivesÀÇ ±â´ÉÀ» ÀÌ¿ëÇÏ´Â INtime ¾îÇø®ÄÉÀÌ¼Ç »ý¼º ÇÁ·ÎÁ§Æ®
  • testlib ÇÁ·ÎÁ§Æ®(IPP INtime ¶óÀ̺귯¸® ÀÛ¼º¿ë ÇÁ·ÎÁ§Æ®)
    • INtime RTÇÁ·Î¼¼½º·ÎºÎÅÍ ÄÝ µÇ´Â IPP ¶óÀ̺귯¸® ÄÝÀ» ·¦ ÇÑ ¶óÀ̺귯¸® ÄÝ.
    • µ¥ÀÌÅÍ ¾ÐÃà(data-compression) »ùÇÃÀ» ÀÌ¿ëÇØ, testmain() ÇÔ¼ö ¶óÀ̺귯¸®¸¦ ÀÛ¼ºÇÕ´Ï´Ù.
ipp01.JPG

IPPtest »ùÇà ó¸®

IPPtest »ùÇÿ¡¼­´Â, ÇÁ·Î±×·¥ ±âµ¿ ÆÐ½º¿Í µ¿ÀÏ ÆÐ½º¿¡ Á¸ÀçÇÏ´Â"origin.bin"(¹ÙÀ̳븮Çʵå)¸¦ Àо, IPP ¶óÀ̺귯¸® 󸮿¡ ÀÇÇØ ¾ÐÃà 󸮸¦ ½Ç½ÃÇÕ´Ï´Ù. ¾ÐÃàÇÑ ¹ÙÀ̳ʸ® À̹ÌÁö¸¦"compressed.bin"·Î ÇØ, µ¿ÀÏ Æú´õ³»¿¡ ÆÄÀϷμ­ º¸Á¸Çϰí ÀÖ½À´Ï´Ù£º

IPPtest.rta main() ó¸®:

 #define INFILENAME "origin.bin" 
 #define OUTFILENAME "cmpressed.bin" 
 void main(int argc, char *argv[]  ) 
 { 
	FILE *fp, *fp1; 
	char filepath[256]; 
	char inFile[256]; 
	char outFile[256]; 
	char 	*cp = NULL; 
	struct stat st; 
	int x; 
	char *inbuf, *outbuf; 
	size_t inbufsize, outbufsize; 
	memset( filepath, 0, sizeof(filepath)); 
	memset( inFile, 0, sizeof(inFile)); 
	memset( outFile, 0, sizeof(outFile)); 
	strcpy( filepath, argv[0]); 
	cp = strrchr( filepath, '\\' ); 
	if ( ! cp ){ 
		printf("Cannot get file path!! \n"); 
		return; 
	} 
	* (cp + 1)  =  '\0'; 
	strcpy( inFile, filepath ); 
	strcpy( outFile, filepath ); 
	strcat( inFile, INFILENAME ); 
	strcat( outFile, OUTFILENAME ); 
	if (stat(inFile, &st)  < 0)  { 
		perror("STAT:  INFILE"); 
		return; 
	} 
	inbufsize = outbufsize = st.st_size; 
	inbuf = malloc(inbufsize); 
	outbuf = malloc(outbufsize); 
	if (! inbuf ||  ! outbuf)  { 
		perror("Unable to allocate memory for test\n"); 
		return; 
	} 
	fp = fopen(inFile, "rb"); 
	if(! fp)  { 
		perror("fopen:  INFILE"); 
		free(outbuf); 
		free(inbuf); 
		return; 
	} 
	if (fread(inbuf, 1, inbufsize, fp)  ! = inbufsize)  { 
		fclose(fp); 
		fprintf(stderr, "Failed to read input file\n"); 
		return; 
	} 
	fclose(fp); 
	printf("Compressing file of %u bytes\n", inbufsize); 
	x = testmain(inbuf, inbufsize, outbuf, &outbufsize); 
	printf("Function compress() returned %d\n", x); 
	fp1 = fopen(outFile, "wb"); 
	if(! fp1)  { 
		perror("fopen:  OUTFILE"); 
		free(outbuf); 
		free(inbuf); 
		return; 
	} 
	fwrite( outbuf, 1, outbufsize, fp1); 
	fclose( fp1 ); 
	printf("File compressed:  size=%u bytes\n", outbufsize); 
 }

ÁÖÀÇ

Intel IPP¸¦ Æ÷ÇÔÇÑ ¶óÀ̺귯¸®(testlib) ºÎ´Â INtime ¾îÇø®ÄÉÀ̼ÇÀÇ µð¹ö°Å¿¡ ÀÇÇØ µð¹ö±× ÇÒ ¼ö ¾ø½À´Ï´Ù(¶óÀ̺귯¸® ÄÝ¿¡ breakpoint¸¦ ¼³Á¤ÇØ, ½ºÅÜ ½ÇÇàµîÀ» ½Ç½ÃÇÏ´Â µî). ½Ç¿î¿ë»ó¿¡¼­´Â ¶óÀ̺귯¸®¸¦ »ý¼º½Ã¿¡ µ¶¸³ÇÑ È¯°æ¿¡¼­ Å×½ºÆ®¸¦ ½Ç½ÃÇØ, Â¥³Ö½À´Ï´Ù.

 

 

HOME | INtime