- Extending Xen* with Intel® Virtualization Technology
- ENERGY STAR* System Implementation
- Competitive Comparison: Dual-Core Intel® Xeon®: Processor-based Platforms vs. AMD Opteron*
- CMP Implementation in Systems Based on the Intel® Core™ Duo processor
- Software Company Plans for Multi-Core: How Epic Games, Adobe Systems, and IBM use Multi-Core Capability
- How to use all of CPUID for x64 platforms under Microsoft Visual Studio .NET 2005
- Flash and .NET Integration using ASP.NET
- Build and consume an ASP.NET Web service
- Multithreaded .NET Web service clients: threads and responsiveness
- High performance image processing and visualization in .NET client applications: Intel Integrated Performance Primitives (IPP)
Welcome to the Intel® Software Dispatch Subscription Program
by Chuck Desylva, Intel Corp.
There are many artificial-intelligence architectures in use. They lend themselves to a variety of applications: game AI, image compression, speech recognition, signal processing, finance algorithms and data mining. The type of AI algorithm addressed here is called an artificial neural network.
The purpose of this paper is to highlight several key artificial intelligence software technologies and some simple changes that can be made to them to gain performance improvements on the Pentium® 4 and Intel® Xeon processors.
There are many sources of information regarding ANNs and their use. My objective is to illustrate ANN optimization on Intel hardware. Since ANN architectures typically have tremendous potential for parallelism, my focus in this article is enhancing performance of an ANN using Hyper-Threading technology (HT technology).
Artificial neural nets (a brief overview)
Before we get into source code optimizations and their significance, it's important to understand some basics about this architecture.
What is a neural network? Simply stated, it is a network of very simple processors (where each processor may have a small amount of memory). These simple processors connect to each other by unidirectional communication paths and typically carry symbolic data. Figure 1 shows binary data being used in an artificial neuron in ways analogous to the symbolic functioning of the biological brain. Though many learning methods exist, 'back-propagation of error,' the most common type of method, is used here. With this method, corrective adjustments on the neural net are mediated by back-propagating error signals from one neuron to those above it. In this way, the net moves closer to the correct result. Also, the topology used in these examples is that of a simple feed-forward net, without any recursive paths (thus creating small memories) in them.
![]()
If you're interested in this topic, these articles may be helpful:
![]() | Cache-blocking technique on Hyper-Threading Technology-enabled processors by Phil Kerly, senior software engineer, Software and Solutions Group,... |
![]() | Hyper-Threading Technology, Multi-core, and Mobile Intel By Khang Nguyen A Hyper-Threading Technology (HT Technology) enable... |
![]() | Multithreaded game programming and Hyper-Threading Technology by Will Damon. Intel Corp. Multiprocessor machines are becoming mor... |
![]() | Impact of thread priority on .NET applications and hyper-threading enabled processors by Eric L. Blair. Intel Corp. Intel processors that support Hyper-T... |
![]() | Preparing for Hyper-Threading and Dual Core Technologies Intel continuously improves the performance and functionality of its m... |
![]()
Related Jobs:

