An Energy-Efficient Heterogeneous System for Embedded Learning and Classification Abhinandan Majumdar, Srihari Cadambi, and Srimat T. Chakradhar NEC Laboratories America, Inc. {abhi, cadambi, chak}@nec-labs.com

Abstract—Embedded learning applications in automobiles, surveillance, robotics and defense are computationally intensive, and process large amounts of real-time data. Systems for such workloads have to balance stringent performance constraints within limited power budgets. High performance CPUs and GPUs cannot be used in an embedded platform due to power issues. In this letter, we propose a low power heterogeneous system consisting of an Atom processor supported by multiple accelerators that target these workloads, and seek to find if such a system can satisfy performance requirements in an energy-efficient manner. We build our low power system using an Atom processor, an ION GPU and an FPGA based custom accelerator, and study its performance and power characteristics using four representative workloads. With such a system, we show 42-85% energy improvement over a server comprising a 2.27 GHz quad-core Xeon coupled to a 1.3 GHz 240 core Tesla GPU.

I. Introduction Embedded learning and classification applications are computationally intensive and process large amounts of realtime data while balancing stringent QoS constraints under tight power budgets. These include applications in the areas of transportation, healthcare, robotics, aerospace and defense. For instance, GreenRoad’s in-vehicle system monitors real-time driving events, analyzes risks, and suggests improvement over driving habits [1]. Such a system requires real-time responsiveness while processing and analyzing continuous streams of data. Cars also continuously monitor and analyze internal sensor data in order to predict failures and reduce recalls. Another example is face, object and action detection in surveillance and store cameras; stores and advertising agencies analyze shopper behavior to gauge interest in specific products and offerings. Such learning and classification applications are computation and data-intensive and generally data parallel in nature. In data centers, such workloads can rely on clusters of high-performance servers and GPUs to meet the stringent performance constraints and dynamic scalability. For example, high-performance GPU based implementations of learning-algorithms like Convolutional Neural Networks (CNN) [2], and Support Vector Machines (SVM) [3] have been published. However, in embedded systems such as automobiles and store cameras, a CPU+GPU server compute node is too power hungry. For example, an Intel® XEON® X7460 consumes 130W of power [4] while NVIDIA’s Tesla

C2050 / C2070 GPU is rated as 247W [5], both far too high to sustain in a car or camera. In this letter, we investigate if a low power server can be designed using embedded processors in order to provide an energy-efficient solution for a class of learning applications without compromising performance. Specifically, we present a heterogeneous system constructed with a low power Atom [6] processor coupled with an ION GPU [7], and an FPGAbased custom accelerator optimized for learning applications [8]. We take four representative learning and classification workloads and find that our Atom-based system consumes much lesser or comparable energy while largely meeting performance constraints. Our work exploits low-end processor heterogeneity and as such differs from past energy-efficient solutions such as FAWN [12] which is specific for I/O and seek-bound applications. Depending on the application, our solution achieves a performance similar to that of a regular, non-embedded server with an energy reduction of up to 85% compared to that of a high end server composed of Xeon and Tesla. Thus, the major contribution of this letter is a low power system that uses processors with three different ISAs, and is therefore heterogeneous. Combining a low-power x86-based Atom processor with a low-end GPU and an FPGA-based custom accelerator, we build a system that can achieve energy efficient operation across a range of applications. The primary reason for this is that the underlying processors all have a low power envelope, and the GPU and custom accelerator accelerate execution of certain workloads while keeping power dissipation low. Our heterogeneous system targets learning applications that require high performance (achievable otherwise only by Xeons and GPUs) whose implementation on embedded platforms is impractical due to power constraints. The rest of the document is organized as follows. In Section II, we discuss related work. In Section III, we characterize the core kernels of our workloads. In Section IV, we describe the system architecture. In Section V, we present the performance characteristics of the workloads. In Section VI, we evaluate the energy consumption of our low power system as a reference and compare it against a standard server. We conclude in Section VII.

Table 1: Workload characteristics

Workload Supervised Semantic Indexing (SSI) [16] Convolutional Neural Network (CNN) [17] K-Means [18]

Sparse Matrix Vector Multiplication (SpMV) [19]

Description

Problem Size

Profile on 2.27GHz Quad-core Xeon % exec time

Routines responsible execution time

Large, dense matrix vector multiplication, followed by array ranking: (extracting top K elements from a large array) 1D, 2D, 3D convolutions and image sub-sampling.

Semantic search algorithm to extract K best documents from a total of N documents based on Q concurrent text queries A pattern recognition algorithm for face and object detection, and semantic text search. Image segmentation algorithm to cluster N points into K clusters.

N = 256K Q = 64 K = 32

>99%

2 640x480 images

>99%

N = 100K K = 32

~97%

Matrix Multiplication of a sparse matrix with a densevector

Matrix: 43Kx43K Non-zeros: 341K

~3% 100%

II. RELATED WORK There are several high performance implementations for learning applications, but few consider minimizing energy. GPU implementations of CNN [2] and SVM [3] for instance utilize the parallel processing nature of GPU and report a significant performance speedup. IBM’s optimization of SpMV on GPUs shows a speed up of 2-4x over NVIDIA’s CUDPP library [9]. Similar high performance work for data parallel applications include use of FPGA based accelerators for domain specific applications. CNN-specific FPGA architectures such as [10] and FPGA-based SVM accelerators such as [11] show a significant performance speedup over CPUs. Recently, a custom accelerator MAPLE [8] was shown to accelerate the common computational kernels of five learning algorithms over the Intel Xeon and a Tesla GPU. Our current work is motivated by the use of embedded processors in other workload domains. For instance, FAWN [12] targets I/O and seek bound applications, while Lim et al. suggest embedded processors for both server and media applications for optimal power and cost [13]. Reddy et al. investigate the use of the Atom processor for web search applications [14] whereas SeaMicro has already started marketing low-power Atom-based clusters for server applications [15]. In this letter, we investigate if an Atom based low power system can be used for embedded learning and classification applications and deliver acceptable performance. III. WORKLOAD CHARACTERISTICS In order to design such a system, we first study representative workloads within our domain. Table 1 describes three learning and classification workloads (SSI, CNN, K-means) and SpMV as a GPU-friendly application. The table briefly describes each workload, and illustrates the

for

Find closest mean for every point Update means for next iteration Sparse matrix-dense vector multiplication

Characteristics routines responsible

of

Data parallel. Matmul produces large intermediate data that is consumed by arrayrank Data parallel and compute bound (16100 ops per memory fetch) Data parallel with large intermediate data Sequential with random access Data parallel, but with random access

performance hot-spots for the specific problem size shown in the third column. We observe that these workloads contain hot-spots that are all data parallel in nature. However, some of them generate large amounts of intermediate data (like SSI), while others involve random access (like SpMV). The highly parallel nature of the algorithms coupled with their computeand memory-bound nature makes them ill-suited for the Atom processor. We therefore augment our system with accelerators, where the Atom functions as a host and control processor, offloading the computationally intensive, data parallel portions of the workloads to special-purpose accelerators. With such special-purpose yet programmable accelerators, we achieve high performance at lower system power. In the following section, we discuss the kinds of accelerators required based on the above characteristics of workload hot-spots. IV. SYSTEM ARCHITECTURE From the workload characteristics in the last column of Table 1, we note the workload hot-spots are predominantly data parallel, while some also generate and operate on large intermediate data. We choose a GPU as an accelerator candidate for data parallel kernels. For kernels that generate large intermediate data, we choose a custom FPGA-based accelerator called MAPLE [8]. MAPLE uses in-memory processing, and specifically targets data parallel kernels that require processing large amounts of intermediate data. The GPU is available in a low-power version, while the FPGA is a low power accelerator by virtue of its lower clock speed and minimal off-chip access specific for learning applications. We describe this in more detail shortly. We now architect the low-power system for embedded learning and classification. Our system consists of a dualcore Intel® Atom™ processor 330 [6] coupled with 16 Core NVIDIA ION GPU [20][7]. We use the ASUS AT3N7A-I

motherboard [221] for our exp m periments. The motherboard has h a PCI slot ontoo which we ad dd an off-the-shelf FPGA card [22] consistingg of a Xilin nx Virtex 5 SX240T devvice c configured wiith the MAP PLE custom accelerator [8] o operating at 100 MHz. MAPLE prrovides masssive p parallelism usiing 512 FPG GA DSP elem ments as paraallel p processors, as well as the FP PGA’s block RAMs R to perfoorm inn-memory prrocessing and efficiently handles laarge inntermediate daata without requiring off-chipp storage. Table 2: Optimal O acceleratorrs for representativve workloads

Workload W SSI CNN K-Means SpMV

Acccelerator Chossen FPGA FPGA FPGA ION

With such a dual accelerattor system conssisting of an IO ON GPU and MA G APLE-configurred FPGA, we w schedule our o w workloads as shown s in Table 2. All sequeential and conttrol p portions are hanndled by the Atom A processorr.

Table 3: Performance P speeddup over Xeon.

SSI S CN NN

Xeon + Tesla 2.777 2.338

Atom 0.14 0.13

Atom+Accelerators 4.12 1.23

K-M Means

1.338

0.19

0.55

SppMV

1.994

0.16

0.27

The respective r speeedups of each system compaared to the common baseline of just the Xeonn processor arre listed in 3 Among all thhe configuratioons, using justt the Atom Table 3. processor results in sllowest perform mance. Howevver, the use GA (MAPLE) accelerators buys back of the ION and FPG perform mance and makkes the embeddded system coompetitive. We notte for SSI, thee use of MAP PLE actually makes the Atom+aaccelerator sysstem faster thaan the Xeon+ +Tesla. For the otheer workloads, the Atom baseed system incuurs a slight slowdow wn despite thee accelerators. In all cases, we w use the Intel MKL M optimizedd libraries for the t Atom and Xeon and nVidia’s CUBLAS for f the GPU. All numbers are results based on o our actual implementation i n, except the CNN C GPU data, whhich are deriveed from [2].

V PERFORM V. MANCE PROFIILE In order to understand u thee performance loss (slowdow wn) ccaused by the Atom processsor, we compaare our proposed e embedded system to a serverr-class system.. Our comparisson a against such high end serverss is motivated by b previous woork o acceleratingg learning app on plications on high h performannce p processors and GPUs [2][3]. Though T these high h performannce s systems meet performance requirements, they cannot be u used in embeddded environments since pow wer is a conceern. O Other low end processors p cou uld execute theese applicationss at loow power but would compro omise performaance.

VI. EN NERGY EVAL LUATION Evenn though the accelerator-baased Atom syystem falls short off the Xeon servver in terms of o performancee for 2 of 4 applicattions, we invvestigate here if it is morre energyefficiennt. In this sectiion, we evaluaate the system energy for the fourr representativve workloads and a compare itt to that of the stanndard Xeon-bassed server. A. Systtem Power Proofile Tablee 4 shows thhe power num mbers measureed using a power meter [23] foor both the proposed p Atom m and the standardd Xeon sysstem when running the specified workloaads. For SpMV V which is schheduled on thee ION, we disable (turn-off) thee FPGA card so it consumes no idle power. The power off the Atom syystem increasess by 5-7W when thhe application is running on the t Atom or IO ON and by 14-16W W when using the t FPGA. Foor the server, we w observe an increease of 24-46W and 68-72W W when the application a runs on Xeon and Tessla respectivelyy. Tablee 4: Power numberrs (in Watts) of Atom and Xeon baseed system

Worklooad Figure 1: 1 Performance off embedded vs. servver system

For the probblem sizes in Table 1, Figgure 1 shows the aapplication execution time on a GPU-acccelerated serrver c comprising a 2.27 GHz quad core XEON coupled with a 1.3 G GHz 240-core NVIDIA Tessla C1070 GPU U with a systtem m memory of 48 GB. The firstt bar shows thhe execution tiime u using just the Xeon, X while thee second bar shhows the reducced tiime when wee accelerate th he core compputational kernnels u using the Teslaa GPU. The third bar show ws the time if the e entire applicatiion runs just on o the Atom processor p and the f fourth bar shhows the im mprovement due d to the two t a accelerators couupled to the Attom.

Idle SSI CNN N K-meaans SpMV V

SER RVER Xeon + Xeon Tesla 179 237 212 305 202 306 225 307 203 309

EMBEDD DED Attom + Attom Accellerators 4 42 55 4 49 69 4 48 70 4 47 71 4 47 53

B. Systtem-wide energgy comparisonn Figurre 2 shows the energy consumption with the workloaads running on the Xeon+T Tesla server, and a on the Atom system aided by the ION N GPU and the t FPGA acceleraator. Executioon of workloaads solely on the Xeon processor is clearly not n energy-opttimal. We alsoo note that executinng workloads solely on the Atom dissippates high

eenergy despite the Atom's lo ow power proffile. For learnning a applications likke SSI, CNN and a K-Means well w suited for the F FPGA acceleraator, the Atom m+accelerator system s consum mes loower energy thhan other conffigurations. Foor SpMV runnning o the ION, thhe Xeon+Teslla system is the on t most energgye efficient system m.

specificc embedded application domains by coupling applicattion-specific acccelerators to low l power proccessors. We envision suchh programmabble embeddedd solutions based on o low power CPUs and higgh performancce domainspecificc accelerators to be a partt of current and a future systemss. Our currennt study proviides encouragging initial results to merit furtther research along these directions. Future work along this t direction includes invesstigating a dynamic runtime strrategy to furtther reduce thhe system energy consumption by optimallyy splitting the workload across the t acceleratorss. REFERENCES [1] [2]

[3]

Figure 2: Ennergy characteristiccs of embedded vss. server system [4]

Table 5 quanntifies the enerrgy reduction of o our low pow wer e embedded systtem with and without the FPGA F acceleraator c compared to thhe best energy y-efficient serrver-configurattion i.e. using Xeonn CPU and Teslla GPU. After adding the FPG GA a accelerator, thee Atom system m provides an energy reducttion o 85% for SS of SI, 56% for CNN, C and 42% for K-Meaans. H However for SpMV, thee Atom+Acccelerator systtem c consumes moree energy than Xeon+Tesla X duue to the absennce o a high-perfoormance SpMV of V-specific acceelerator and low wer p parallelism of ION as compaared to Tesla. That is, the IO ON u underperforms the Tesla to such an extennt that it ends up d dissipating morre energy. Table 5: Ennergy reduction of Atom system overr Xeon + Tesla (in perrcentage)

[5] [6] [7] [8]

[9] [10]

[11]

[12]

Atom 221.9 178.1

Atom + Acceleerators -84.8 -55.7

K-M Means

14.0

-41.9

SpM MV

79.2

30.3

[14]

VII. CON NCLUSION

[15]

SS SI CN NN

In this letter, we presented d an energy effficient system for eembedded learning and cllassification applications. a T The s system compriises an Atom processor couupled to an IO ON G GPU as welll as an FPGA accelerattor. Using four fo r representative w demonstraate the energgyworkloads, we e efficiency of our o system oveer standard serrver systems. Our O s system achievves energy efficiency because of two t c characteristic f features: a) FPGA's F high performance p ( (we leverage its spatial parallellism resultingg from its laarge n number of DSPs) for certain n learning appplications desppite o operating at 1000 MHz, and b) Atom's low w power featurres. F GPU-frienndly applicatio For ons like SpMV V, ION’s limiited p parallelism alone cannot com mpete with TE ESLA in termss of e energy despitee operating att low power. Thus our woork p proposes an altternative solutiion to reduce system s energy for

[13]

[16]

[17]

[18]

[19]

[20] [21] [22] [23]

httpp://www.greenroadd.com/our_solutionn.html Nassse, F.; Thurau, C.; Fink, G. A., “Facce Detection Usingg GPU-Based Connvolutional Neurall Networks,” Com mputer Analysis off Images and Pattterns, 13th Internaational Conferencee, CAIP 2009, pp. 83-90 Cataanzaro, B.; Sunddaram, N.; Keutzer, K., “Fast Suupport Vector Traiining and Classsification on Graaphics Processorrs,” Machine Learning, 25th Inteernational Conferrence on Machinne Learning, ML 2008), pp. 1044-111. (ICM httpp://www.intel.com//cd/products/servicces/emea/eng/proccessors/xeon7 000/343718.htm httpp://www.nvidia.com m/object/product__tesla_C2050_C20070_us.html httpp://ark.intel.com/Prroduct.aspx?id=355641 httpp://www.nvidia.com m/object/sff_ion.hhtml S Cadambi, et al., “A Programmable Paarallel Acceleratorr for Learning and Classification",, Parallel Archhitectures and Compilation Techhniques (PACT 20010), Vienna, Austtria, September 20010. httpp://www.alphaworkks.ibm.com/tech/spmv4gpu Sannkaradas, M., et al, “A Massiveely Parallel Copprocessor for Connvolution Neural Networks”, In Proceedings P of the 20th IEEE Inteernational Confference on A Application-specifi ic Systems, Archhitectures and Proocessors (ASAP 20009), pp. 53-60. Caddambi, S., et al, “A “ Massively Paraallel FPGA-basedd Coprocessor for Support Vectorr Machines”, Inn Proceedings of the IEEE mposium on Fieldd-Programmable Custom Computinng Machines Sym (FC CCM 2009), pp. 115 - 122. V. Vasudevan, V et al., “FAWNdamentallly Power-efficientt Clusters,” In Proceedings of 12th Workshop on Hot Topics in Operaating Systems (HootOS 2009), Montee Verita, May 20099. K. Lim, P. et al., “Understanding and Designing New Server Architectures for Emeerging Warehousee-Computing Envirronments”, In Proceedings of Interrnational Symposiuum on Computer Architecture 20008, pp. 315 - 326. Vijaay Janapa Reddii, et al., "Web search using mobile m cores: Quaantifying and mitiggating the price off efficiency", 37th International Sym mposium on Compuuter Architecture 2010, 2 pp. 314-325. S. Higginbotham H (2010, Jan 6) , “SeaM Micro’s Secret Server Changes Com mputing Econom mics”, http://gigaoom.com/2010/01/006/seamicrossecrret-server-changes-computing-econoomics/ Bai,, B., et al., “Leaarning to Rank with w (a lot of) woord features”, Speccial Issue: Learniing to Rank for Innformation Retrievval 2009, pp. 291-314. Lecun, Y., et al., "Gradient-based " l learning applied to document E, vol.86, no.11, pp.2278-2324, p recoognition," Proceeddings of the IEEE Novv 1998. MaccQueen, J. B., “S Some methods forr classification and analysis of mulltivariate observatiion,” In Proceedinngs of the Berkeleey Symposium on Mathematical M Statistics and Probabiility, pp. 281–297. K. Kourtis, K G. Goum mas, and N. Koziriis, "Optimizing Spparse MatrixVecctor Multiplicatioon Using Indexx and Value Compression," C Proceedings of the ACM A Internationnal Conference onn Computing Frontiers, pp. 87-96. m/object/product__geforce_9400m_gg_us.html httpp://www.nvidia.com httpp://www.asus.com//product.aspx?P_ID D=xrR7wto9Z5BL L42aU&tem plette=2 httpp://www.xilinx.com m/products/virtex55/sxt.htm httpps://www.wattsupm meters.com/secure/products.php?pn= =0&wai=228 &m more=2-

An Energy-Efficient Heterogeneous System for ...

Abstract—Embedded learning applications in automobiles, surveillance .... investigate the use of the Atom processor for web search ..... /products.php?pn=.

295KB Sizes 7 Downloads 292 Views

Recommend Documents

An Energy-Efficient Heterogeneous System for ... - Semantic Scholar
IV, we describe the system architecture. In Section V, we present the performance characteristics of the workloads. In. Section VI, we evaluate the energy ...

An Energy-Efficient Heterogeneous System for ...
investigate the use of the Atom processor for web search ... accelerators, where the Atom functions as a host and control ... to extract K best .... operating at 10.

Data Migration System in Heterogeneous Database - International ...
*(IOK-COE, Pune University, India. Email: [email protected]). ABSTRACT. With information becoming an increasingly valuable corporate asset, ...

A shared file system abstraction for heterogeneous ...
process must pessimistically transfer all the data the ac- ..... mapping. Unfortunately GPU does not expose any pro- grammable virtual memory, thus requiring ...

An Evaluation of Mashup Tools Based on Support for Heterogeneous ...
IFrame widgets, Plain Old Object Java Objects (POJOs), Enterprise Java Beans. (EJB) can be all considered within this category. Though some of these meth-.

An Evaluation of Mashup Tools Based on Support for Heterogeneous ...
A component model for mashups should be able to equally take two aspects ... 2 Evaluation Framework. To define the ... For instance, JavaScript APIs, HTML.

Heterogeneous Agent Macroeconomics: An Example and an ... - GitHub
Keynesian multipliers should be big in liquidity trap. Crude Keynesianism: .... Calibrate income process to match macro and micro data. 2. Calibrate other ...

Localized delaybounded and energyefficient data ...
aggregation in wireless sensor and actor networks. Xu Li1 ... data aggregation; delay bound; wireless sensor networks ...... nications and Internet of Things.

Data Migration System in Heterogeneous Database
challenges of data migration in dynamic IT environments and the key business advantages that we have designed to ... involve an application migration or consolidation in which one or more legacy systems are replaced or .... Scheduling :.

Spatially heterogeneous dynamics in a granular system ...
Dec 27, 2007 - system near jamming. A. R. Abate and D. J. Durian. University of Pennsylvania, Philadelphia, Pennsylvania 19104. (Received 23 August 2007; ...

heterogeneous catalysis for todays challenges ...
heterogeneous catalysis for todays challenges synthesis characterization and applications rsc green chemistry contains important information and a detailed ...

Concord: Homogeneous Programming for Heterogeneous Architectures
Mar 2, 2014 - Irregular applications on GPU: benefits are not well-understood. • Data-dependent .... Best. Overhead: 2N + 1. Overhead: N. Overhead: 1. Lazy.

Speed-Based Mobility Management for Heterogeneous Wireless ...
anticipated that the future wireless mobile Internet ... the integration of IP and wireless technologies. ... heterogeneous wireless network mobility management.

Entity identification for heterogeneous database ...
Internet continuously amplifies the need for semantic ..... ing procedure of an application service provider. (ASP) for the .... ю 17:4604 В Home ю 14:9700 В Bus.

Adaptive Bayesian personalized ranking for heterogeneous implicit ...
explicit feedbacks such as 5-star graded ratings, especially in the context of Netflix $1 million prize. ...... from Social Media, DUBMMSM '12, 2012, pp. 19–22.

Incorporating heterogeneous information for ... - ACM Digital Library
Aug 16, 2012 - A social tagging system contains heterogeneous in- formation like users' tagging behaviors, social networks, tag semantics and item profiles.

A Prototype for An Intelligent Information System for ...
for Jamming and Anti-jamming. Applications of Electromagnetic Spectrum. .... As normal information system development life cycle [6,9,22] we need to analyze.

A Prototype for An Intelligent Information System for ...
Data. Acquisition. & Manipulation. Threats Data. Platforms Technical Data. Threats Library. Pods Library. Intelligent. Information System. (IIS). Mission Plan. Data. Reporting &. Documentation. User Adaptive. Refinement. Available Decisions. Plan Doc

Applying an Object-Oriented Petri Net Language to Heterogeneous ...
heterogeneous systems which are comprised of components with different ... A heterogeneous system is a complex entity made up from subsystems with ...