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 ... - 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 ...

295KB Sizes 1 Downloads 364 Views

Recommend Documents

Optimal Detection of Heterogeneous and ... - Semantic Scholar
Oct 28, 2010 - where ¯Φ = 1 − Φ is the survival function of N(0,1). Second, sort the .... (β;σ) is a function of β and ...... When σ ≥ 1, the exponent is a convex.

Evaluating Heterogeneous Information Access ... - Semantic Scholar
We need to better understand the more complex user be- haviour within ... search engines, and is a topic of investigation in both the ... in homogeneous ranking.

Thermo-Tutor: An Intelligent Tutoring System for ... - Semantic Scholar
The Intelligent Computer Tutoring Group (ICTG)1 has developed a ... the years in various design tasks such as SQL queries [9], database ..... Chemical and Process Engineering degree at the University of ..... J. Learning Sciences, vol. 4, no. 2,.

Thermo-Tutor: An Intelligent Tutoring System for ... - Semantic Scholar
hard to master for novices. In addition to ... in the best funded institutions, the student-to-teacher ratio is ... best. Low achieving students find the work difficult and never ... complement to traditional courses: it assumes that the students hav

Thermo-Tutor: An Intelligent Tutoring System for ... - Semantic Scholar
developed several ITSs for procedural skills, such as data normalization within relational ..... transmission and temporary storage of data. ASPIRE uses the ..... “Intelligent Tutoring Goes to School in the Big City”. Int. J. Artificial. Intellig

Semi-supervised Learning over Heterogeneous ... - Semantic Scholar
homogeneous graph used by graph based semi-supervised learning. ..... tively created graph database for structuring human knowledge. In SIGMOD, pages ...

Predicting Synchrony in Heterogeneous Pulse ... - Semantic Scholar
University of Florida, Gainesville, FL 32611. (Dated: July 16 .... time of the trajectory, we empirically fit the modified ... The best fit in the least squares sense was.

Evaluating Heterogeneous Information Access ... - Semantic Scholar
search engines, and is a topic of investigation in both the academic community ... the typical single ranked list (e.g. ten blue links) employed in homogeneous ...

An Automatic Valuation System in the Human Brain - Semantic Scholar
Nov 11, 2009 - According to economic theories, preference for one item over others reveals its rank value on a common scale. Previous studies identified brain regions encoding such values. Here we verify that these regions can valuate various categor

t12: an advanced text input system with phonetic ... - Semantic Scholar
systems for key-starved mobile devices. The text input schemes are needed not just for SMS (Short Message. Service), but also email, Internet access, contacts,.

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.

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=.

The heterogeneous motility of the Lyme disease ... - Semantic Scholar
adhesion as a dynamic rather than a static process. The movements of ... network known as a basement membrane (21). The spirochetes ... tributed new reagents/analytic tools; M.W.H., H.C.F., and C.W.W. analyzed data; and. M.W.H. ...

A handy multi-coupon system - Semantic Scholar
... of a coin. Indeed, in a coupon system, every coupon is redeemed to the service provider that has ... are useful means to draw the attention of potential customers. Due to the di- ...... An efficient online electronic cash with unlinkable exact ..

Approaches of using UML for Embedded System ... - Semantic Scholar
of constraints like performance, cost, power consumption, size and weight etc. The platform of implementation may be ... signal processing of audio and video, wired and wireless communication have led to complex embedded ..... for Proposal: UML. Prof

A Scalable Messaging System for Accelerating ... - Semantic Scholar
using these HEC platforms in the paper. Keywords-associative messaging system, publish/subscribe, in- situ/in-transit analytics, data staging. I. INTRODUCTION.

A 3D Shape Measurement System - Semantic Scholar
With the technical advancement of manufacturing and industrial design, the ..... Matlab, http://www.vision.caltech.edu/bouguetj/calib_do c/. [3] O. Hall-Holt and S.

Microsoft Research Treelet Translation System - Semantic Scholar
impact of parser error, we translated n-best parses. 3.6. .... Proceedings of ACL 2005, Ann Arbor, MI, USA, 2005. ... State University of New York Press, 1988.

Approaches of using UML for Embedded System ... - Semantic Scholar
and software. Choice of system components depends upon optimality of. - Implementation of function. - Analysis of alternatives in both hardware and software domains. Specification of flexible hardware- ... These systems are integration of subsystems

A Scalable Messaging System for Accelerating ... - Semantic Scholar
the staging area that comprises of a smaller set of dedicated cores, typically on .... server nodes, it transparently dissembles the data query and disseminates the ...

A Multi-Agent System for Airline Operations Control - Semantic Scholar
(Eds.): 7th International Conference on PAAMS'09, AISC 55, pp. 159-168 ... Operations control is one of the most important areas in an airline company. Through ...

A solid oxide fuel cell system for buildings - Semantic Scholar
Fuel cells are a clean, quiet and efficient energy conversion technology and have ... that extracts heat from low temperature sources, upgrades .... 2. System configuration and description. The basic system configuration of the combined system.

MAS_UP-UCT: A Multi-Agent System for University ... - Semantic Scholar
School administration, that deals with the tools that handle timetables, financial ... Input data: q courses, K1,...,Kq, for each i, course Ki consists of ki lectures, .... The analysis and design phases of the MAS_UP-UCT development were done by ...

A System for Indian Postal Automation - Semantic Scholar
We calculate some statistics on the collected postal data to have an idea of .... Water reservoir based feature: In English script it can be found that there are many big top ..... column fields, which in turn is written as the product of individual