Intel Integrated Performance Primitives for Intel Architecture

Size: px
Start display at page:

Download "Intel Integrated Performance Primitives for Intel Architecture"

Transcription

1 Intel Integrated Performance Primitives for Intel Architecture Using Intel Integrated Performance Primitives in Microsoft* C#.NET* String Manipulation Version 2.0 June, 2004

2 Information in this document is provided in connection with Intel products. No license, express or implied, by estoppel or otherwise, to any intellectual property rights is granted by this document. EXCEPT AS PROVIDED IN INTEL'S TERMS AND CONDITIONS OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER, AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RELATING TO SALE AND/OR USE OF INTEL PRODUCTS INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT. Intel products are not intended for use in medical, life saving, or life sustaining applications. This document as well as the software described in it is furnished under license and may only be used or copied in accordance with the terms of the license. The information in this document is furnished for informational use only, is subject to change without notice, and should not be construed as a commitment by Intel Corporation. Intel Corporation assumes no responsibility or liability for any errors or inaccuracies that may appear in this document or any software that may be provided in association with this document. Designers must not rely on the absence or characteristics of any features or instructions marked "reserved" or "undefined." Intel reserves these for future definition and shall have no responsibility whatsoever for conflicts or incompatibilities arising from future changes to them. The software described in this document may contain software defects which may cause the product to deviate from published specifications. Current characterized errata are available on request. Intel SpeedStep, Celeron, Dialogic, i386, i486, icomp, Intel, Intel Centrino, Intel logo, Intel386, Intel486, Intel740, IntelDX2, IntelDX4, IntelSX2, Intel Inside, Intel Inside logo, Intel NetBurst, Intel NetStructure, Intel Xeon, Intel XScale, Itanium, MMX, MMX logo, Pentium, Pentium II Xeon, Pentium III Xeon, and VTune are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries. * Other names and brands may be claimed as the property of others. Copyright 2004 Intel Corporation.

3 Using Intel Integrated Performance Primitives in Microsoft C#.NET* - String Manipulation Table of Contents Introduction...4 Intel IPP Interfaces...4 String Class...5 Performance...7 Use of Intel IPP String vs.net String...8 GetHashCode Method...8 Test System Specification...9 References...9 iii

4 Introduction The Intel Integrated Performance Primitives (Intel IPP) provide an interface to develop applications in C language. Due to the use of the calling conventions stdcall for the Microsoft* Windows*, the primitives may be used in applications written in many other languages, for example, Fortran, C#, Java and so on. The Intel IPP sample described in more detail later in this document demonstrates the possibility of using Intel IPP in developing an application in the Microsoft*.NET Framework using the C# language. Specifically this sample shows the use of the Intel IPP string manipulation primitives in developing a class and its methods that is analogous to the class System.String. The sample uses the C# implementation of the class String from the.net Frameworks Class Library (FCL). Intel IPP Interfaces Intel IPP libraries are C style unmanaged code DLLs. To enable using these DLLs in C#, special wrapper classes ipps.cs and ippch.cs are created for signal processing (ipps) and string manipulation (ippch) application domains. These classes are declared as follows: // ipps.cs namespace ipp { public class sp { // ippch.cs namespace ipp { public class ch { Enumerated data types that are used in the Intel IPP libraries must be declared in the wrapper classes with a keyword enum. For example, the enumerator IppRoundMode is declared as follows: public enum IppRoundMode { ipprndzero = 0, ipprndnear = 1, Many Intel IPP functions use structures as parameters. To pass structures from the managed environment to the unmanaged one, the managed class struct must comply with the corresponding library in the unmanaged code. The attribute StructLayout is used with the value LayoutKind.Sequential. The code bellow shows how to use the structure Ipp64fc: [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi)] public struct Ipp64fc { public double re; public double im; public Ipp64fc( double re, double im ) { 4

5 this.re = re; this.im = im; To access the unmanaged DLL functions from the managed code, the function name and the name of the corresponding DLL must be indicated. This information is included in the managed description of the unmanaged functions that are called from the DLL. The attribute DllImport and function specifiers static, extern specify the method that is used by.net to create a function and to marshal data. The attribute MarshalAs is used with the corresponding fields. For example, the function ippchgetlibversion is called as follows: using System.Runtime.InteropServices; namespace ipp { [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi)] unsafe public class IppLibraryVersion { public int major; public int minor; public int majorbuild; public int build; [MarshalAs(UnmanagedType.ByValTStr, SizeConst=4)] public string targetcpu; public sbyte* Name; public sbyte* Version; public sbyte* BuildDate; public class ch { [DllImport( ippch20.dll )] public static extern IppLibraryVersion ippchgetlibversion(); Almost all Intel IPP functions have pointers as parameters. The functions with pointers must be declared in the unsafe context. For example, the function ippscopy_8u is declared as: using System.Runtime.InteropServices; namespace ipp { public enum IppStatus { ippstsnoerr = 0, unsafe public class sp { [DllImport( ipps20.dll )] public static extern IppStatus ippscopy_8u ( byte* psrc, byte* pdst, int len ); This code must be compiled with the /unsafe option. Note that working with pointers in the C# application requires using the operator fixed. The fixed statement sets a pointer to a managed variable and "pins" that variable during the execution of the statement. Without the fixed statement, pointers to managed variables would be of little use since garbage collection could relocate the variables unpredictably. String Class The class IPPSystem.String is created using the Intel IPP functions as follows: 5

6 namespace IPPSystem { [Serializable] public sealed class String: IComparable, ICloneable, IConvertible, IEnumerable, ISerializable { This class contains all the methods of the class System.String with the exception of methods Intern(), IsIntern(). The distinctive feature of the developed class IPPSystem.String is the possibility to use both classes System.String and IPPSystem.String in the application. The IPPSystem.String methods with string parameters are duplicated to be used both as System.String and IPPSystem.String class methods without conversion from one to another: ///<summary> ///Creates a new instance of String with the same value as a specified /// instance of String. ///</summary> public static string Copy(string str) { public static String Copy(String str) { To convert these classes, the following operators are used: public static implicit operator System.String(String value) { public static implicit operator String(System.String value) { When methods are called in the application, the corresponding class must be specified for the compiler. The type string (in lowercase) denotes the System.String class. If you specify the class as String (with uppercase S), this will lead to the compiler error message: 'reference' ('String') is an ambiguous reference'. Therefore, the namespace and class must be either specified explicitly, or the corresponding names of the classes need be defined. The code below shows the possibility of using simultaneously both System.String and IPPSystem.String classes. using stringy = IPPSystem.String; class Example { static void Main( string[] args ) { stringy ippstr = ; // equivalent to IPPSystem.String // ippstr = ; string str = string.copy( ippstr ); //equivalent to System.String // str = System.String.Copy(ippstr); Console.WriteLine( {0 {1, ippstr, str ); One more additional feature of the developed class is the implementation of the methods of the System.String objects. These methods have additional (first) parameter self of string type: ///<summary> ///Copies a specified number of characters from a specified position in // the current String instance to a specified position in a specified // array of Unicode characters. 6

7 ///</summary> public void CopyTo(int sourceindex, char[] destination, int destinationindex, int count); public void CopyTo(string self, int sourceindex, char[] destination, int destinationindex, int count); Performance The Intel IPP code is optimized for the Intel processors and significantly improves the performance of different kinds of applications including the System.String, which is a.net application. To test the developed class IPPSystem.String and its methods and to measure their performance, the special example program named stripps.exe (includes files base.cs, Test.cs, Perf.cs, stripps.cs) was created. It tests the methods IndexOf, LastIndexOf, CompareOrdinal, GetHashCode, Equals, Split, Compare. The performance in CPU cycles was measured for different string lengths on the 2.40 GHz Intel Pentium 4 processorbased system, which is detailed in the Test System Specification section. Before analyzing the results of performance measurements, consider the factors that can slow down the performance of an application. The first of them is a mechanism of the Platform Invocation Service (P/Invoke) described in [4]. The second factor is the use of String class methods that return a new string, since performance of such methods is impossible to improve. To perform a required operation, these methods need to construct a new object. Public constructors of the object System.String, as well as constructors of the symbol arrays in the IPPSystem.String, allocate and initialize memory, and place objects into the table that will be used by garbage collection. These procedures initialize slowly and take a long time to continue, sometimes even longer than an operation itself. As an illustration, Table 1 gives the performance numbers for the method String.Concat(String, String) that returns a new string and copies to it two other 16-element strings. Table 1: Performance in CPU cycles of the method String.Concat Method Performance System.String.Concat 350 IPPSystem.String.Concat 660 However, methods that do not create new strings operate much faster when they use Intel IPP. For example Table 2 gives the performance numbers for the method String.IndexOf(String) that returns the index of the first occurrence of the specified 5-element substring in the 16-element string. Table 2: Performance in CPU cycles of the method String.IndexOf Method Performance System.String.IndexOf 820 IPPSystem.String.IndexOf 170 The Table 3 gives the measured performance numbers for both System.String (denoted as MS) and IPPSystem.String (denoted as IPP) methods. 7

8 Table 3: Performance of Different Methods, CPU cycles String/substring length, elements Method IndexOf(String) IndexOf(Char) Insert(String) 16/5 64/- 8/8 MS IPP Use of Intel IPP String vs.net String If an application uses extensively methods that create a new string (for example, such methods as Copy, Insert, PadLeft, PadRight, Remove, Substring, Concat, Split), the developed class IPPSystem.String operates slower than the corresponding.net class because Intel IPP string has to call the constructor that additionally initializes an array. On the contrary, if an application uses methods that do not create new strings, or the cost of the operation is comparable to the overhead of string construction (for example, such methods as IndexOf, GetHashCode, EndsWith, StartsWith, Equals, IndexOfAny, ToCharArray, Trim), then the use of the class IPPSystem.String based on Intel IPP functions brings significant performance gain. GetHashCode Method The method GetHashCode of the.net class System.String stops execution and returns a hash code if zero is met in the string. The remainder of the string is not processed despite the fact that a string in C# is not zero-ended. Therefore the.net version of the method can produce the same hash code for two different strings. For example: class Example { static void Main( string[] args ) { int hash; string Str1 = "abc"+'\u0000'+"d"; string Str2 = "abc"+'\u0000'+"e"; hash = Str1.GetHashCode(); Console.WriteLine(hash); // hash = Str2.GetHashCode(); Console.WriteLine(hash); // In Intel IPP functions the region of interest (ROI) or length of the data array to be processed is passed as an argument. This excludes the above described situation. Compare with the following code example that uses the GetHashCode method of the IPPSystem.String class: using IPPSystem; class Example { static void Main( string[] args ) { int hash; IPPSystem.String Str1 = "abc"+'\u0000'+"d"; IPPSystem.String Str2 = "abc"+'\u0000'+"e"; hash = Str1.GetHashCode(); Console.WriteLine(hash); //1256 8

9 hash = Str2.GetHashCode(); Console.WriteLine(hash); //1257 Note that Intel IPP has several hushing algorithms. In the above example, the proprietary hashing algorithm implemented in the optimized function ippshash_16u32u is used. To provide compatibility with the Microsoft C#, the function ippshashmscs_16u32u can be used (for compatibility with the Sun* Java use the function ippshashsj2_16u32u). Test System Specification Configuration of the base machines used for testing is given in the table below: Table 4: System Configurations Processor System Processor Stepping GHz Intel Pentium 4 processor Intel MS440GX motherboard Bios Version Award Software International, Inc PG, Secondary Cache Memory Size Hard Disk 512KB 512 MB Seagate Cheetah* ST360021A Video Controller/Bus NVIDIA GeForce4* MX 440 Video Memory Size/Type 64MB SGRAM Video Driver Revision Graphics Operating System Sound Card 1280x1024, 85 Hz, 32bit Color Microsoft Windows* XP Professional - Build 2600 w/service pack 1 Advance AC97 Audio References [1] Intel Integrated Performance Primitives [2].NET Development [3].NET Platform Invoke Services [4] Using Intel Integrated Performance Primitives in Microsoft* C#.NET. Intel Corporation,

Intel Integrated Performance Primitives for Intel Architecture. Using Intel Integrated Performance Primitives in C++ Applications

Intel Integrated Performance Primitives for Intel Architecture. Using Intel Integrated Performance Primitives in C++ Applications Intel Integrated Performance Primitives for Intel Architecture Using Intel Integrated Performance Primitives in C++ Applications Version 2.0 June, 2004 Information in this document is provided in connection

More information

Intel C++ Compiler Documentation

Intel C++ Compiler Documentation Document number: 304967-001US Disclaimer and Legal Information INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY

More information

Getting Compiler Advice from the Optimization Reports

Getting Compiler Advice from the Optimization Reports Getting Compiler Advice from the Optimization Reports Getting Started Guide An optimizing compiler can do a lot better with just a few tips from you. We've integrated the Intel compilers with Intel VTune

More information

Intel Thread Checker 3.1 for Windows* Release Notes

Intel Thread Checker 3.1 for Windows* Release Notes Page 1 of 6 Intel Thread Checker 3.1 for Windows* Release Notes Contents Overview Product Contents What's New System Requirements Known Issues and Limitations Technical Support Related Products Overview

More information

Installation Guide and Release Notes

Installation Guide and Release Notes Intel C++ Studio XE 2013 for Windows* Installation Guide and Release Notes Document number: 323805-003US 26 June 2013 Table of Contents 1 Introduction... 1 1.1 What s New... 2 1.1.1 Changes since Intel

More information

ECC Handling Issues on Intel XScale I/O Processors

ECC Handling Issues on Intel XScale I/O Processors ECC Handling Issues on Intel XScale I/O Processors Technical Note December 2003 Order Number: 300311-001 INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS

More information

Enabling DDR2 16-Bit Mode on Intel IXP43X Product Line of Network Processors

Enabling DDR2 16-Bit Mode on Intel IXP43X Product Line of Network Processors Enabling DDR2 16-Bit Mode on Intel IXP43X Product Line of Network Processors Application Note May 2008 Order Number: 319801; Revision: 001US INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH

More information

Intel Parallel Studio XE 2011 for Windows* Installation Guide and Release Notes

Intel Parallel Studio XE 2011 for Windows* Installation Guide and Release Notes Intel Parallel Studio XE 2011 for Windows* Installation Guide and Release Notes Document number: 323803-001US 4 May 2011 Table of Contents 1 Introduction... 1 1.1 What s New... 2 1.2 Product Contents...

More information

Installation Guide and Release Notes

Installation Guide and Release Notes Installation Guide and Release Notes Document number: 321604-001US 19 October 2009 Table of Contents 1 Introduction... 1 1.1 Product Contents... 1 1.2 System Requirements... 2 1.3 Documentation... 3 1.4

More information

Intel Desktop Board DZ68DB

Intel Desktop Board DZ68DB Intel Desktop Board DZ68DB Specification Update April 2011 Part Number: G31558-001 The Intel Desktop Board DZ68DB may contain design defects or errors known as errata, which may cause the product to deviate

More information

Intel IXP42X Product Line of Network Processors and IXC1100 Control Plane Processor: Boot-Up Options

Intel IXP42X Product Line of Network Processors and IXC1100 Control Plane Processor: Boot-Up Options Intel IXP42X Product Line of Network Processors and IXC1100 Control Plane Processor: Boot-Up Options Application Note September 2004 Document Number: 254067-002 Contents INFORMATION IN THIS DOCUMENT IS

More information

Product Change Notification

Product Change Notification Product Change Notification Change Notification #: 114547-01 Change Title: Intel Dual Band Wireless-AC 3165 SKUs: 3165.NGWG.I; 3165.NGWGA.I; 3165.NGWG.S; 3165.NGWG; 3165.NGWGA.S; 3165.NGWGA, PCN 114547-01,

More information

Product Change Notification

Product Change Notification Product Change Notification Change Notification #: 114137-00 Change Title: Intel Dual Band Wireless-AC 8260, Intel Dual Band Wireless-N 8260, SKUs: 8260.NGWMG.NVS, 8260.NGWMG.S, 8260.NGWMG, 8260.NGWMG.NV

More information

Techniques for Lowering Power Consumption in Design Utilizing the Intel EP80579 Integrated Processor Product Line

Techniques for Lowering Power Consumption in Design Utilizing the Intel EP80579 Integrated Processor Product Line Techniques for Lowering Power Consumption in Design Utilizing the Intel Integrated Processor Product Line Order Number: 320180-003US Legal Lines and Disclaimers INFORMATION IN THIS DOCUMENT IS PROVIDED

More information

Product Change Notification

Product Change Notification Product Change Notification Change Notification #: 114332-00 Change Title: Intel Dual Band Wireless-AC 7260, Intel Dual Band Wireless-N 7260, Intel Wireless-N 7260, SKUs: 7260.NGIANG, 7260.NGIG, 7260.NGINBG,

More information

Intel Platform Controller Hub EG20T

Intel Platform Controller Hub EG20T Intel Platform Controller Hub EG20T UART Controller Driver for Windows* Programmer s Guide Order Number: 324261-002US Legal Lines and Disclaimers INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION

More information

Third Party Hardware TDM Bus Administration

Third Party Hardware TDM Bus Administration Third Party Hardware TDM Bus Administration for Windows Copyright 2003 Intel Corporation 05-1509-004 COPYRIGHT NOTICE INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE,

More information

Intel IT Director 1.7 Release Notes

Intel IT Director 1.7 Release Notes Intel IT Director 1.7 Release Notes Document Number: 320156-005US Contents What s New Overview System Requirements Installation Notes Documentation Known Limitations Technical Support Disclaimer and Legal

More information

Product Change Notification

Product Change Notification Product Change Notification Change Notification #: 115169-01 Change Title: Intel Dual Band Wireless-AC 8265 SKUs: 8265.D2WMLG; 8265.D2WMLG.NV; 8265.D2WMLG.NVH; 8265.D2WMLGH; 8265.D2WMLG.NVS; 8265.D2WMLG.S;

More information

Intel Cache Acceleration Software for Windows* Workstation

Intel Cache Acceleration Software for Windows* Workstation Intel Cache Acceleration Software for Windows* Workstation Release 3.1 Release Notes July 8, 2016 Revision 1.3 INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS

More information

Intel(R) Threading Building Blocks

Intel(R) Threading Building Blocks Getting Started Guide Intel Threading Building Blocks is a runtime-based parallel programming model for C++ code that uses threads. It consists of a template-based runtime library to help you harness the

More information

Intel IXP400 Software: Integrating STMicroelectronics* ADSL MTK20170* Chipset Firmware

Intel IXP400 Software: Integrating STMicroelectronics* ADSL MTK20170* Chipset Firmware Intel IXP400 Software: Integrating STMicroelectronics* ADSL MTK20170* Chipset Firmware Application Note September 2004 Document Number: 254065-002 INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION

More information

Product Change Notification

Product Change Notification Product Change Notification 113412-00 INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY

More information

Product Change Notification

Product Change Notification Product Change Notification Change Notification #: 115338-00 Change Title: Intel Dual Band Wireless-AC 7265 and Intel Dual Band Wireless-N 7265 SKUs: 7265.NGWANG.W; 7265.NGWG.NVBR; 7265.NGWG.NVW; 7265.NGWG.W;

More information

Intel Parallel Amplifier Sample Code Guide

Intel Parallel Amplifier Sample Code Guide The analyzes the performance of your application and provides information on the performance bottlenecks in your code. It enables you to focus your tuning efforts on the most critical sections of your

More information

Intel Platform Controller Hub EG20T

Intel Platform Controller Hub EG20T Intel Platform Controller Hub EG20T Packet HUB Driver for Windows* Programmer s Guide February 2011 Order Number: 324265-002US Legal Lines and Disclaimers INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION

More information

Intel Platform Administration Technology Quick Start Guide

Intel Platform Administration Technology Quick Start Guide Intel Platform Administration Technology Quick Start Guide 320014-003US This document explains how to get started with core features of Intel Platform Administration Technology (Intel PAT). After reading

More information

Installation Guide and Release Notes

Installation Guide and Release Notes Installation Guide and Release Notes Document number: 321604-002US 9 July 2010 Table of Contents 1 Introduction... 1 1.1 Product Contents... 2 1.2 What s New... 2 1.3 System Requirements... 2 1.4 Documentation...

More information

Product Change Notification

Product Change Notification Product Notification Notification #: 114712-01 Title: Intel SSD 750 Series, Intel SSD DC P3500 Series, Intel SSD DC P3600 Series, Intel SSD DC P3608 Series, Intel SSD DC P3700 Series, PCN 114712-01, Product

More information

Intel 848P Chipset. Specification Update. Intel 82848P Memory Controller Hub (MCH) August 2003

Intel 848P Chipset. Specification Update. Intel 82848P Memory Controller Hub (MCH) August 2003 Intel 848P Chipset Specification Update Intel 82848P Memory Controller Hub (MCH) August 2003 Notice: The Intel 82848P MCH may contain design defects or errors known as errata which may cause the product

More information

Recommended JTAG Circuitry for Debug with Intel Xscale Microarchitecture

Recommended JTAG Circuitry for Debug with Intel Xscale Microarchitecture Recommended JTAG Circuitry for Debug with Intel Xscale Microarchitecture Application Note June 2001 Document Number: 273538-001 Information in this document is provided in connection with Intel products.

More information

LED Manager for Intel NUC

LED Manager for Intel NUC LED Manager for Intel NUC User Guide Version 1.0.0 March 14, 2018 INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO

More information

Product Change Notification

Product Change Notification Product Change Notification 112087-00 INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY

More information

Intel(R) Threading Building Blocks

Intel(R) Threading Building Blocks Getting Started Guide Intel Threading Building Blocks is a runtime-based parallel programming model for C++ code that uses threads. It consists of a template-based runtime library to help you harness the

More information

Upgrading Intel Server Board Set SE8500HW4 to Support Intel Xeon Processors 7000 Sequence

Upgrading Intel Server Board Set SE8500HW4 to Support Intel Xeon Processors 7000 Sequence Upgrading Intel Server Board Set SE8500HW4 to Support Intel Xeon Processors 7000 Sequence January 2006 Enterprise Platforms and Services Division - Marketing Revision History Upgrading Intel Server Board

More information

Product Change Notification

Product Change Notification Product Change Notification Change Notification #: 114216-00 Change Title: Intel SSD 730 Series (240GB, 480GB, 2.5in SATA 6Gb/s, 20nm, MLC) 7mm, Generic Single Pack, Intel SSD 730 Series (240GB, 480GB,

More information

Introduction to Intel Fortran Compiler Documentation. Document Number: US

Introduction to Intel Fortran Compiler Documentation. Document Number: US Introduction to Intel Fortran Compiler Documentation Document Number: 307778-003US Disclaimer and Legal Information INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE,

More information

How to Configure Intel X520 Ethernet Server Adapter Based Virtual Functions on SuSE*Enterprise Linux Server* using Xen*

How to Configure Intel X520 Ethernet Server Adapter Based Virtual Functions on SuSE*Enterprise Linux Server* using Xen* How to Configure Intel X520 Ethernet Server Adapter Based Virtual Functions on SuSE*Enterprise Linux Server* using Xen* Technical Brief v1.0 September 2011 Legal Lines and Disclaimers INFORMATION IN THIS

More information

Intel IXP42X Product Line of Network Processors and IXC1100 Control Plane Processor PCI 16-Bit Read Implementation

Intel IXP42X Product Line of Network Processors and IXC1100 Control Plane Processor PCI 16-Bit Read Implementation Intel IXP42X Product Line of Network Processors and IXC1100 Control Plane Processor PCI 16-Bit Read Implementation Application Note September 2004 Document Number: 300375-002 INFORMATION IN THIS DOCUMENT

More information

Open FCoE for ESX*-based Intel Ethernet Server X520 Family Adapters

Open FCoE for ESX*-based Intel Ethernet Server X520 Family Adapters Open FCoE for ESX*-based Intel Ethernet Server X520 Family Adapters Technical Brief v1.0 August 2011 Legal Lines and Disclaimers INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS.

More information

Intel Parallel Studio XE 2011 SP1 for Linux* Installation Guide and Release Notes

Intel Parallel Studio XE 2011 SP1 for Linux* Installation Guide and Release Notes Intel Parallel Studio XE 2011 SP1 for Linux* Installation Guide and Release Notes Document number: 323804-002US 21 June 2012 Table of Contents 1 Introduction... 1 1.1 What s New... 1 1.2 Product Contents...

More information

Intel Integrated Native Developer Experience 2015 Build Edition for OS X* Installation Guide and Release Notes

Intel Integrated Native Developer Experience 2015 Build Edition for OS X* Installation Guide and Release Notes Intel Integrated Native Developer Experience 2015 Build Edition for OS X* Installation Guide and Release Notes 24 July 2014 Table of Contents 1 Introduction... 2 1.1 Product Contents... 2 1.2 System Requirements...

More information

Intel 945(GM/GME)/915(GM/GME)/ 855(GM/GME)/852(GM/GME) Chipsets VGA Port Always Enabled Hardware Workaround

Intel 945(GM/GME)/915(GM/GME)/ 855(GM/GME)/852(GM/GME) Chipsets VGA Port Always Enabled Hardware Workaround Intel 945(GM/GME)/915(GM/GME)/ 855(GM/GME)/852(GM/GME) Chipsets VGA Port Always Enabled Hardware Workaround White Paper June 2007 Order Number: 12608-002EN INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION

More information

GUID Partition Table (GPT)

GUID Partition Table (GPT) GUID Partition Table (GPT) How to install an Operating System (OS) using the GUID Disk Partition Table (GPT) on an Intel Hardware RAID (HWR) Array under uefi environment. Revision 1.0 December, 2009 Enterprise

More information

Product Change Notification

Product Change Notification Product Change Notification Change Notification #: 114258-00 Change Title: Intel SSD DC S3710 Series (200GB, 400GB, 800GB, 1.2TB, 2.5in SATA 6Gb/s, 20nm, MLC) 7mm, Generic 50 Pack Intel SSD DC S3710 Series

More information

Intel Desktop Board DG41CN

Intel Desktop Board DG41CN Intel Desktop Board DG41CN Specification Update December 2010 Order Number: E89822-003US The Intel Desktop Board DG41CN may contain design defects or errors known as errata, which may cause the product

More information

Intel Desktop Board DH55TC

Intel Desktop Board DH55TC Intel Desktop Board DH55TC Specification Update December 2011 Order Number: E88213-006 The Intel Desktop Board DH55TC may contain design defects or errors known as errata, which may cause the product to

More information

Product Change Notification

Product Change Notification Product Change Notification 113028-02 INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY

More information

Intel Desktop Board DG41RQ

Intel Desktop Board DG41RQ Intel Desktop Board DG41RQ Specification Update July 2010 Order Number: E61979-004US The Intel Desktop Board DG41RQ may contain design defects or errors known as errata, which may cause the product to

More information

Using Intel Inspector XE 2011 with Fortran Applications

Using Intel Inspector XE 2011 with Fortran Applications Using Intel Inspector XE 2011 with Fortran Applications Jackson Marusarz Intel Corporation Legal Disclaimer INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS

More information

Product Change Notification

Product Change Notification Product Change Notification Change Notification #: 115107-00 Change Title: Intel Ethernet Converged Network Adapter X520 - DA1, E10G41BTDAPG1P5,, MM#927066, Intel Ethernet Converged Network Adapter X520

More information

Intel Platform Controller Hub EG20T

Intel Platform Controller Hub EG20T Intel Platform Controller Hub EG20T Inter Integrated Circuit (I 2 C*) Driver for Windows* Programmer s Guide Order Number: 324258-002US Legal Lines and Disclaimers INFORMATION IN THIS DOCUMENT IS PROVIDED

More information

Product Change Notification

Product Change Notification Product Change Notification Change Notification #: 115007-00 Change Title: Select Intel SSD 530 Series, Intel SSD 535 Series, Intel SSD E 5410s Series, Intel SSD E 5420s Series, Intel SSD PRO 2500 Series,

More information

Intel Desktop Board D945GCLF2

Intel Desktop Board D945GCLF2 Intel Desktop Board D945GCLF2 Specification Update July 2010 Order Number: E54886-006US The Intel Desktop Board D945GCLF2 may contain design defects or errors known as errata, which may cause the product

More information

Product Change Notification

Product Change Notification Product Change Notification 111962-00 INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY

More information

Intel Desktop Board DG31PR

Intel Desktop Board DG31PR Intel Desktop Board DG31PR Specification Update May 2008 Order Number E30564-003US The Intel Desktop Board DG31PR may contain design defects or errors known as errata, which may cause the product to deviate

More information

Intel Setup and Configuration Service Lite

Intel Setup and Configuration Service Lite Intel Setup and Configuration Service Lite Release Notes Version 6.0 Document Release Date: February 4, 2010 Information in this document is provided in connection with Intel products. No license, express

More information

Product Change Notification

Product Change Notification Product Change Notification Change Notification #: 114840-00 Change Title: Intel Omni-Path Host Fabric Interface Adapter 100 Series 1 Port PCIe x16 Standard 100HFA016FS, Intel Omni-Path Host Fabric Interface

More information

Intel I/O Processor Chipset with Intel XScale Microarchitecture

Intel I/O Processor Chipset with Intel XScale Microarchitecture Intel 80310 I/O Processor Chipset with Intel XScale Microarchitecture Initialization Considerations White Paper July 2001 Order Number: 273454-001 Information in this document is provided in connection

More information

Intel MPI Library for Windows* OS

Intel MPI Library for Windows* OS Intel MPI Library for Windows* OS Getting Started Guide The Intel MPI Library is a multi-fabric message passing library that implements the Message Passing Interface, v2 (MPI-2) specification. Use it to

More information

Installation Guide and Release Notes

Installation Guide and Release Notes Intel Parallel Studio XE 2013 for Linux* Installation Guide and Release Notes Document number: 323804-003US 10 March 2013 Table of Contents 1 Introduction... 1 1.1 What s New... 1 1.1.1 Changes since Intel

More information

Product Change Notification

Product Change Notification Product Change Notification 112177-01 INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY

More information

GAP Guided Auto Parallelism A Tool Providing Vectorization Guidance

GAP Guided Auto Parallelism A Tool Providing Vectorization Guidance GAP Guided Auto Parallelism A Tool Providing Vectorization Guidance 7/27/12 1 GAP Guided Automatic Parallelism Key design ideas: Use compiler to help detect what is blocking optimizations in particular

More information

Using the Intel VTune Amplifier 2013 on Embedded Platforms

Using the Intel VTune Amplifier 2013 on Embedded Platforms Using the Intel VTune Amplifier 2013 on Embedded Platforms Introduction This guide explains the usage of the Intel VTune Amplifier for performance and power analysis on embedded devices. Overview VTune

More information

INTEL PERCEPTUAL COMPUTING SDK. How To Use the Privacy Notification Tool

INTEL PERCEPTUAL COMPUTING SDK. How To Use the Privacy Notification Tool INTEL PERCEPTUAL COMPUTING SDK How To Use the Privacy Notification Tool LEGAL DISCLAIMER THIS DOCUMENT CONTAINS INFORMATION ON PRODUCTS IN THE DESIGN PHASE OF DEVELOPMENT. INFORMATION IN THIS DOCUMENT

More information

Intel Desktop Board D946GZAB

Intel Desktop Board D946GZAB Intel Desktop Board D946GZAB Specification Update Release Date: November 2007 Order Number: D65909-002US The Intel Desktop Board D946GZAB may contain design defects or errors known as errata, which may

More information

Intel Desktop Board D975XBX2

Intel Desktop Board D975XBX2 Intel Desktop Board D975XBX2 Specification Update July 2008 Order Number: D74278-003US The Intel Desktop Board D975XBX2 may contain design defects or errors known as errata, which may cause the product

More information

Intel Desktop Board D945GCCR

Intel Desktop Board D945GCCR Intel Desktop Board D945GCCR Specification Update January 2008 Order Number: D87098-003 The Intel Desktop Board D945GCCR may contain design defects or errors known as errata, which may cause the product

More information

How to Create a.cibd/.cce File from Mentor Xpedition for HLDRC

How to Create a.cibd/.cce File from Mentor Xpedition for HLDRC How to Create a.cibd/.cce File from Mentor Xpedition for HLDRC White Paper August 2017 Document Number: 052889-1.2 INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE,

More information

Intel Desktop Board DP55SB

Intel Desktop Board DP55SB Intel Desktop Board DP55SB Specification Update July 2010 Order Number: E81107-003US The Intel Desktop Board DP55SB may contain design defects or errors known as errata, which may cause the product to

More information

The Intel Processor Diagnostic Tool Release Notes

The Intel Processor Diagnostic Tool Release Notes The Intel Processor Diagnostic Tool Release Notes Page 1 of 7 LEGAL INFORMATION INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR

More information

Intel Parallel Studio XE 2015 Composer Edition for Linux* Installation Guide and Release Notes

Intel Parallel Studio XE 2015 Composer Edition for Linux* Installation Guide and Release Notes Intel Parallel Studio XE 2015 Composer Edition for Linux* Installation Guide and Release Notes 23 October 2014 Table of Contents 1 Introduction... 1 1.1 Product Contents... 2 1.2 Intel Debugger (IDB) is

More information

Product Change Notification

Product Change Notification Product Change Notification Change Notification #: 115190-03 Change Title: Intel Omni-Path Director Class Switch 100 Series 24 Slot Base 1MM 100SWD24B1N Date of Publication: March 1, 2017 Intel Omni-Path

More information

Intel Desktop Board D945GCLF

Intel Desktop Board D945GCLF Intel Desktop Board D945GCLF Specification Update July 2010 Order Number: E47517-008US The Intel Desktop Board D945GCLF may contain design defects or errors known as errata, which may cause the product

More information

Sample for OpenCL* and DirectX* Video Acceleration Surface Sharing

Sample for OpenCL* and DirectX* Video Acceleration Surface Sharing Sample for OpenCL* and DirectX* Video Acceleration Surface Sharing User s Guide Intel SDK for OpenCL* Applications Sample Documentation Copyright 2010 2013 Intel Corporation All Rights Reserved Document

More information

Product Change Notification

Product Change Notification Product Change Notification Change Notification #: 114473-00 Change Title: Intel LLVT7028A103, LLVT7028A102, MHVT7037B001, FMVT7014E302, and LQVT7040B003 Processors PCN 114473-00, Manufacturing Site, Product

More information

Intel Parallel Studio XE 2011 for Linux* Installation Guide and Release Notes

Intel Parallel Studio XE 2011 for Linux* Installation Guide and Release Notes Intel Parallel Studio XE 2011 for Linux* Installation Guide and Release Notes Document number: 323804-001US 8 October 2010 Table of Contents 1 Introduction... 1 1.1 Product Contents... 1 1.2 What s New...

More information

Product Change Notification

Product Change Notification Product Change Notification Change Notification #: 115990-00 Change Title: Select SKUs for Intel Optane SSD 900P Series PCN 115990-00, Label, Label Updates Date of Publication: December 12, 2017 Key Characteristics

More information

Product Change Notification

Product Change Notification Product Change Notification 110046-00 Information in this document is provided in connection with Intel products. No license, express or implied, by estoppel or otherwise, to any intellectual property

More information

Product Change Notification

Product Change Notification Product Change Notification Change Notification #: 115772-00 Change Title: memory, NUC7i3BNHX1, memory, NUC7i5BNHX1, memory, NUC7i7BNHX1, Intel NUC Kit, NUC7i3BNH, Intel NUC Kit, NUC7i3BNK, Intel NUC Kit,

More information

Product Change Notification

Product Change Notification Product Change Notification Change Notification #: 114927-00 Change Title: Intel True Scale Fabric products, PCN 114927-00, Product Discontinuance, End Of Life Date of Publication: September 30, 2016 Key

More information

Product Change Notification

Product Change Notification Product Change Notification Change Notification #: 115962-00 Change Title: For Select Intel SSD DC S3520 Series SKUs, PCN 115962-00, Label, Label Updates Date of Publication: November 29, 2017 Key Characteristics

More information

Intel Desktop Board D915GUX Specification Update

Intel Desktop Board D915GUX Specification Update Intel Desktop Board D915GUX Specification Update Release Date: July 2006 Order Number: C80894-005US The Intel Desktop Board D915GUX may contain design defects or errors known as errata, which may cause

More information

Evolving Small Cells. Udayan Mukherjee Senior Principal Engineer and Director (Wireless Infrastructure)

Evolving Small Cells. Udayan Mukherjee Senior Principal Engineer and Director (Wireless Infrastructure) Evolving Small Cells Udayan Mukherjee Senior Principal Engineer and Director (Wireless Infrastructure) Intelligent Heterogeneous Network Optimum User Experience Fibre-optic Connected Macro Base stations

More information

How to Create a.cibd File from Mentor Xpedition for HLDRC

How to Create a.cibd File from Mentor Xpedition for HLDRC How to Create a.cibd File from Mentor Xpedition for HLDRC White Paper May 2015 Document Number: 052889-1.0 INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS

More information

Intel Desktop Board D915GEV Specification Update

Intel Desktop Board D915GEV Specification Update Intel Desktop Board D915GEV Specification Update Release Date: July 2006 Order Number: C80889-005US The Intel Desktop Board D915GEV may contain design defects or errors known as errata, which may cause

More information

Intel G31/P31 Express Chipset

Intel G31/P31 Express Chipset Intel G31/P31 Express Chipset Specification Update For the Intel 82G31 Graphics and Memory Controller Hub (GMCH) and Intel 82GP31 Memory Controller Hub (MCH) February 2008 Notice: The Intel G31/P31 Express

More information

Intel Desktop Board DH61SA

Intel Desktop Board DH61SA Intel Desktop Board DH61SA Specification Update December 2011 Part Number: G52483-001 The Intel Desktop Board DH61SA may contain design defects or errors known as errata, which may cause the product to

More information

Bitonic Sorting. Intel SDK for OpenCL* Applications Sample Documentation. Copyright Intel Corporation. All Rights Reserved

Bitonic Sorting. Intel SDK for OpenCL* Applications Sample Documentation. Copyright Intel Corporation. All Rights Reserved Intel SDK for OpenCL* Applications Sample Documentation Copyright 2010 2012 Intel Corporation All Rights Reserved Document Number: 325262-002US Revision: 1.3 World Wide Web: http://www.intel.com Document

More information

Continuous Speech Processing API for Host Media Processing

Continuous Speech Processing API for Host Media Processing Continuous Speech Processing API for Host Media Processing Demo Guide April 2005 05-2084-003 INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED,

More information

Installation Guide and Release Notes

Installation Guide and Release Notes Installation Guide and Release Notes Document number: 321418-001US 12 October 2009 Table of Contents 1 Introduction... 2 1.1 Change History... 2 1.2 Product Contents... 3 1.3 System Requirements... 3 1.4

More information

Intel 82580EB/82580DB GbE Controller Feature Software Support. LAN Access Division (LAD)

Intel 82580EB/82580DB GbE Controller Feature Software Support. LAN Access Division (LAD) Intel 82580EB/82580DB GbE Controller Feature Software Support LAN Access Division (LAD) Revision: 1.3 March 2012 Intel 82580EB/82580DB GbE Controller Legal Legal INFORMATION IN THIS DOCUMENT IS PROVIDED

More information

OpenCL* and Microsoft DirectX* Video Acceleration Surface Sharing

OpenCL* and Microsoft DirectX* Video Acceleration Surface Sharing OpenCL* and Microsoft DirectX* Video Acceleration Surface Sharing Intel SDK for OpenCL* Applications Sample Documentation Copyright 2010 2012 Intel Corporation All Rights Reserved Document Number: 327281-001US

More information

Product Change Notification

Product Change Notification Product Change Notification Change Notification #: 115446-01 Change Title: Intel Dual Band Wireless-AC 7260 SKUs: SG83348, 7260.HMWG.R, 7260.HMWG.NVR, 7260.HMWWB.R, 7260.HMWG.S1R, Intel Dual Band Wireless-AC

More information

Bitonic Sorting Intel OpenCL SDK Sample Documentation

Bitonic Sorting Intel OpenCL SDK Sample Documentation Intel OpenCL SDK Sample Documentation Document Number: 325262-002US Legal Information INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL

More information

Intel Integrated Native Developer Experience 2015 Build Edition for OS X* Installation Guide and Release Notes

Intel Integrated Native Developer Experience 2015 Build Edition for OS X* Installation Guide and Release Notes Intel Integrated Native Developer Experience 2015 Build Edition for OS X* Installation Guide and Release Notes 22 January 2015 Table of Contents 1 Introduction... 2 1.1 Change History... 2 1.1.1 Changes

More information

Product Change Notification

Product Change Notification Product Change Notification 111213-02 Information in this document is provided in connection with Intel products. No license, express or implied, by estoppel or otherwise, to any intellectual property

More information

Product Change Notification

Product Change Notification Product Change Notification Change Notification #: 116381-00 Change Title: Intel NUC Kit NUC7i3DNKE Intel NUC Kit NUC7i3DNHE Intel NUC Board NUC7i3DNBE Intel NUC 7 Business, a mini PC with Intel Core i3

More information

Product Change Notification

Product Change Notification Product Change Notification Change Notification #: 116199-00 Change Title: Intel NUC Kit, NUC7i3BNK, Intel NUC Kit, NUC7i3BNH, Intel NUC Kit, NUC7i5BNK, Intel NUC Kit, NUC7i5BNH, Intel NUC Kit, NUC7i7BNH,

More information

Product Change Notification

Product Change Notification Product Change Notification Change Notification #: 115736-00 Change Title: Intel Omni-Path Edge Switch 100 Series 24 Port Managed Forward 2 PSU 100SWE24QF2, Port Managed Forward 1 PSU 100SWE48QF1, Port

More information