GPUs powering the AI revolution

Ganapathy Raman Kasi*, Muthiah Annamalai+

[This article originally appeared in the 2017 Tamil Internet conference, UT-SC, Toronto, Canada, magazine ]


The current hot trend in AI revolution is “deep learning” – which is a fancy way of talking about multi-layered convolutional neural networks; this field of study has heralded a new age in computing extending human capabilities by automation and intelligent machines [1].

These neural networks aren’t the same as neuron networks in your brain! We are talking about artificial neural networks which reside in computers and tries to mimic the biological neural network with its synapses (connections) of axons, dendrons and their activation potentials. These thinking machines have their beginnings in post WW-II research at MIT, in the work of Seymour Papert who introduced “Perceptrons,” and Norbert Weiner’s “Cybernetics”.

But do we know why there is sudden interest in these biologically inspired computer models ? It is due to GPUs which has accelerated all the complex computations associated with neural networks for it be practical in such a large scale. They allow these networks to operate on gigabytes (or even terabytes) of data and have significantly reduced the computation time from months to days, or days to hours, or hours to minutes usually by an order of magnitude – not possible in an earlier generation of computing. Before we jump into the details let us understand why we need deep learning and convolutional neural networks in the first place.

Scientific Innovations

Science and engineering have traditionally advanced by our ability to understand phenomena in natural world and describe them mathematically, since the times of Leonardo Da Vinci, Nicolas Copernicus, Galileo Galilei, Tycho Brahe, Johannes Kepler and Isaac Newton. However gaining models through experimentation and scientific breakthroughs piece-meal for each problem at hand is a slow process. Outside of Physics and Mathematics the scientific method is largely driven by an empirical approach.

It is in such pursuits of building models of unknown processes where observational data far exceed our human intelligence to divine an analytical model, the advent of deep learning and GPU based multi-layered neural networks provide an ad-hoc computable model. System identification for particular classification tasks, image recognition, and speech recognition to the modern miracle of a self-driving cars are all enabled by deep learning technology. All this came about due to the seminal work of many innovators culminating in the discovery of efficient convolutional neural networks by Prof. Geoff Hinton, who trained them by hardware acceleration via GPUs.

An original pioneer in the field of AI, before the AI winter, Prof. Geoff Hinton and co-workers [2] recently showed deep learning models that beat status-quo benchmarks on classification and prediction tasks on the following speech, text or image datasets: Reuters, TIMIT, MNIST, CIFAR and ImageNet, setting off the renewed interest in the field of AI from academia and industry giants – Google, Microsoft, Baidu and Facebook alike [3].

What is a GPU ?

GPU stands for Graphics Processing Unit [4]. These were originally designed for graphics rendering used in video games in 1990s. They have a large number of parallel cores which are very efficient for doing simple mathematical computations like matrix multiplications. These computations are the fundamental basis for machine learning methods such as deep learning. While the improvement in CPUs over years has slowed down over the years as Moore’s law has hit a bottleneck, the GPUs increase in performance has continued unabated showing tremendous improvements over the generations.

Figure. 1 (left): Deep Learning training task times as function of various GPU processors from NVidia. Figure. 2(right): AlexNet training throughput for 20 iterations on various CPU/GPU processing platforms.

Such GPUs were originally invented for shading algorithms algorithms, are now applied in training large machine learning models using a Open CL or CUDA like frameworks (variants of C-language with description for parallel execution via threading) from the vendors.

The pioneering hardware vendors include Nvidia with their GPU series like GeForce, Tesla; AMD with its Radeon, GP GPU, Google has entered this race with its TPU (Tensor Processing Unit) and some offerings from Intel for ML training applications. Nvidia and AMD are the main players in the GPU space with Nvidia laying special emphasis on parallel computing and deep learning over the years. Nvidia just announced the new Volta generation chip based GPU V100 which is about 2.5 x faster than the previous generation chip Pascal GP100 which was announced less than 2 years ago [5].Compared to CPU, however GPUs are more than 50x faster for Deep learning. Performance of GPUs as function of various GPU families in shown in Figure. 1, and for another AlexNet data set is shown in Figure. 2.

Hardware Innovation

If the Harvard architecture and RISC architecture based CPUs have been workhorses of personal computer revolution, then the advent of high framerate video-gaming pushed the CPU based graphics rendering from CPU + Video card based rendering to CPU + GPU, to CPU + GPU + GP-GPU (general purpose GPU); some of this overview is shown in Figure. 3a, 3b.

Figure. 3(a,b): Evolution of GPU performance from video graphics cards and rendering from CPU; courtesy PC Magazine [4]; Figure. 3(c): NVIDIA Tesla GPU applications in scientific research.


GPU’s are suitable for large numerical algorithms where various data have to be moved through a computational pipeline often in parallel; this SIMD problem, like genome sequencing shown in Figure. 3c, when solved by GPU gain the maximum speedup/acceleration. However, there is a fundamental limitations of GPU acceleration due to the Amdahl’s law which saturates the parallelization upto the available serial bottlenecks for a given computational task.

Software Frameworks

To build a deep learning application one may use their labeled datasets to build a learning model on any of the various frameworks [6] (both open-source or closed) provided from competing vendors in the industry as follows:

  1. TensorFlow, developed by google, python API over C++ engine, low level api, good for researchers, not commercially supported; notably Google is in process of developing a TPU – an advanced version of GPU for direct use with TensorFlow.

  2. Caffe 2, developed by UC Berkeley used at Facebook among other places, focussed on computer vision, one of the earlier frameworks to gain significant adoption, Python API over C++ and CUDA code

  3. Scikit Learn (Python based) general inference and machine-learning framework

  4. Theano written in python, grand-daddy of deep learning frameworks

  5. CNTK developed by Microsoft


Tamil applications for deep learning including providing or improving existing solutions to the problems of,

  1. Tamil Speech Recognition
  2. Tamil Character Recognition [7,8]
  3. Natural Language Processing for Tamil

Hardware acceleration and availability of big-data (labeled datasets) will play key role in the success of applying deep learning techniques to these problems.


  1. Jensen Huang, “Accelerating AI with GPUs: A New Computing Model,” link

  2. G. E. Hinton et-al. “Imagenet classification with deep convolutional neural networks,” Advances in Neural Information Processing Systems (2012).

  3. LeCun, Y., Bengio, Y. and Hinton, G. E., “Deep Learning” Nature, Vol. 521, pp 436-444. (2015), link.

  4. GPU definition at PC Magazine Encyclopedia, PC Magazine, (2017) link.

  5. Tesla GPU Application notes from NVidia, (2017) link.

  6. Comparing deep learning frameworks”, (2017), link.

  7. Prashanth Vijayaraghavan, Mishra Sra, “Handwritten Tamil Recognition using a Convolutional Neural Network,” NEML Poster (2015) link.

  8. R. Jagadeesh Kannan, S. Subramanian, “An Adaptive Approach of Tamil Character Recognition Using Deep Learning with Big Data-A Survey”, Proceedings of 49th Annual Convention of Computer Society of India (vol. 1) pp 557-567 (2015), link.

தமிழ் இணைய மாநாடு 2017 – டொரோண்டோ, கனடா

16-ஆவது தமிழ் இணைய மாநாடு, டொராண்டோ, கனடாவில் சென்ற வாரம் சிறப்பாக நடைபெற்றது.  

எனக்கும் ஒரு நல்ல அறிமுகவாகவும், அனுபவமாகவும் இருந்தது.  மாநாடு நிறைவு பெரும் நாள் — at University of Toronto Scarborough (UTSC). இந்த படங்கள் எடுக்கப்பட்டன:


நன்றி, நினைவுகள்

எனக்கு நிரைய விஷயங்கள் புதிதும், பலதும், பழையதும் புரிந்தது. எனக்கும் வயசாக நான் தொடர்ந்து வேலை செய்த அறிஞர்களிடத்து நான் ஞாயமாக கண்ட ஒரு ஆதங்கம் “இளைஞர்கள் முன்னோடிகளின் வேலைகளையும், பங்களிப்புகளையும் சரிவர மதிப்பதில்லை” என்ற ஒரு கருத்து. இது பெரும்பாலும் உண்மை. ஒரு கருவி, செயல்பாடு உருவாக்கிய பின் அதனை அடடா இது தானா – நம்மளே பன்னிருக்கலாமே என்று ஒரு  “post-hoc”, “after the fact”  நினைப்பில் முன்வந்த உருவாக்கங்களை நாம் லேசுபடுத்தியுள்ளோம்.

தமிழ் இணைய மாநாடு (2017)-இல் வரலாறு படைத்த தமிழறிஞர்களுடன் கலந்துரையாடியது மகிழ்ச்சி. நியூட்டன் சொன்னது, “standing on shoulders of giants”, போன்ற நமது இன்றைய நிலைக்கு காரணம் இவர்களை போன்ற சான்றோரின் பணி. நம்ம Jimmy Wales, Steve Jobs, Richard Stallman போன்றவர்களை மட்டும் ஒரு கடவுள் அளவுக்கு பார்க்கிறோம் – நம்மது தமிழர்களை நாம் மிகைப்படுத்துவதும், பெருமிதம் கொண்டும், கொண்டாடுவதும் அரிது.


எனது பயனத்தை நிஜமாக்கிய மாநாடு குழு தலைவர் பேரா. திரு. செல்வா அவர்களுக்கும், எனது குடும்பத்தினருக்கும், எழில் மொழி குழு, திறமூல தமிழ் மென்பொருள் நண்பர்களுக்கும் நன்றி.


குறிப்பாக எழில் திட்டம் நிறைய கடன்பட்டது – முக்கியமாக எனது பங்களிப்பாளர்களுக்கும், எங்கள் குடும்பகளுக்கும் முன்னிலையில். எங்கோ செல்கிறோம், விரைவில் முன்னேற்றமோ, முடிவோ வரும்.

மேலும் புது சவால்கள் வரும், அத்துடன் துணிச்சலான தீர்வுகளும் வரும். அச்சம் இல்லை என்பது இந்திய சுதந்திர போராட்டம் என்பதற்கு மட்டும் பாரதி சொன்னதில்லை, தமிழில் இயங்கும் நமக் கும் கூட இது பொருந்துமோ!


அகத்து 25

முதல் நாள் என்னால் போக முடியவில்லை; இதனை பற்றி இங்கு படிக்கலாம்.

அகத்து 26

இரண்டாம் நாள் திரு. முத்து நெடுமாறன் அவர்கள் “கருவாக்கல் – உருவாக்கல் – விரிவாக்கல்” என்ற தலைப்பில் பேசினார். நல்ல உரை, இது product development பற்றியும், அவரது ஏறத்தாழ 30-ஆண்டு அனுபவத்தை தொட்டு அற்புதமான ஒரு பேச்சாக அமைந்தது. அவர் சொன்னதில் சில முக்கியமானது, மற்ற இடங்களிலும் நான் கேட்டிருக்கிறேன் ஆனால் முதலில் தமிழ் வெளியில் இவரிடமே.

  1. தமிழினால் மட்டும் உங்கள் உத்தி வியாபாரம்/பயன்பாடு ஆகாது. அதற்க்கு முதல் நிலை பயனர் தேவைகளை பூர்த்தி செய்யவேண்டும்.
  2. எளிமை, பயனர் அனுபவம் எளிதாக இருத்தல் வேண்டும்.
  3. உரிமம் – இலவசமாக கொத்தாலும் ஒரு உத்தி/செயலி அபாரமாக வெற்றி அடையும் என்று சொல்ல முடியாது.
  4. மேலும், பயனர்கள் எப்படி தமிழ் இடைமுகங்களை புறக்கணிக்கின்றனர் என்றும் உதாரணங்கள் கூறினார்.

அடுத்து  பேரா. திரு. வாசு அரங்கநாதன், அவர்கள் பேசினார். அவர் தமிழில் எப்படி மொழியியல் வழியிலும் JSON-வழி tagging செய்வது, ஒரு crowdsourced-ஆக இதை எப்படி செய்து செவ்விலக்கியங்களை படிப்பது என்று அவர் ஆராய்ச்சி செய்தும் உருவாக்கி வரும் அந்த ஒரு மென்பொருள் வலைதளத்தை உதாரணம் காட்டினார். இது ஒரு பெரிய மேம்பாடாக எனக்கு தெரிந்தது.

எனது படைப்பான, “Tamil open-source challenges and opporunities” என்கிற தலைப்பில் வேகமாக பேசினேன்; எதிர்பாராத விதமாக சில மூத்த பேராசிரியர் நடுவில், அமெரிக்க பல்கலை வரம்பில் இல்லாதபடி, கேள்விகள் எழுப்பியும் அபிப்ராயங்களை எழுப்பியும் சற்று திசை திருப்ப முயன்றார்; நான் “உங்கள் விமரிசனங்களை ஒப்பு கொள்கிறேன்,” என்றபடி பேசி சென்றேன்.   எனது பேச்சில் நல்ல ஈடுபாடு இருந்ததாக தெரிந்தது. எனது திரை-படிமங்கள் இங்கு slideshare-இல்.

Image may contain: 1 person, screen

தமிழ் திற மூல மென்பொருள் வெளியில் உள்ள சவால்களும், வாய்ப்புக்களும் என்ற கட்டுரையை வழங்கிய பொழுது. (INFITT 2017, University of Toronto, Scarborough).

எனக்கடுத்தது நினைவில் உள்ளபடியான கட்டுரை “நூலகம் அறக்கட்டளை”-யின் நற்கீரன் அவர் படைத்தார். தமிழில் object-entity தொடர்பாடல் உருவாக்குதல் பற்றியும் ஒரு ontology பயன்செய்து semantic web உருவாக்குதலை பற்றியும் மிக துல்லியமாக பேசினார்.

அகத்து 27

இன்று சிறப்புரை ஆற்றியது பேரா. திரு. கல்யாணசுந்தரம் அவர்கள் மதுரை திட்டம் பற்றி, அதன் தோற்றம், அவரது கணிமை ஈடுபாடு, வரலாறு பற்றி மிக அருமையாக பேசினார். மதுரை திட்டம் பற்றி எப்படி 30-ஆண்டு காலமாக தொடர்ந்து புத்தகங்களை எண்ணிம உரையாக பராமரித்து வருகிறார் என்றும் கூறினார்.

இளங்கோ சேரன் அவர் “clj-thamil” பற்றியும் prefix tries தரவமைப்பு (data structure) பற்றியும் பேசினார். இதில் அவர் நேர்வழி பயன்பாடு (demo) காட்டி எல்லாரையும் அசத்திட்டார். அவரது திரை-படிமங்கள் மற்றும் கட்டுரை இங்கு.

எழில் பதிவெண் 0.99 வெளியீடு படைப்பு

எனது பங்கிற்கு நான் அதிகமாக எதிர்பார்த்து கொண்டிருந்த எழில் கணினி மொழி வெளியீடு பற்றிய சவால்கள் பற்றிய கட்டுரை வாசிக்க நேரம் வந்தது; கட்டுரை திரை படிவங்கள் இங்கே. நான் அரங்கில் உள்ளோரை கேள்விகளை படைப்பு முடியும் வரை சேமித்து கொள்ள சொன்னேன். எழில் வளர்ச்சி பற்றியும், சந்தித்த முட்டுக்கட்டைகளையும் பற்றியும் எப்படி இன்றுள்ள நிலையை எட்டினோம் என்றும் சொன்னேன். “தமிழில் நிரல் எழுது” என்ற புத்தகத்தை விளம்பரப்படுத்தினேன். பேச்சு முடிந்தபின் சிலருக்கு இந்த புத்தகத்தை கையெழுத்திட்டு சிறப்பு நினைவாகவும், மற்றவருக்கு கனடிய வெள்ளி ஆறரை-இக்கும் விற்பனை செய்தேன். ரொம்ப கேள்விகள் இல்லை. நேரம் அதிகம் சென்றது – உணவும் வேளை ஆகியது. – ஆனால் எல்லோரும் அப்பாடா என்று என்னைவிட சற்று பெருமூச்சு விட்ட மாதிரி எனக்கு நலைப்பின்னர் தோன்றியது. என்ன எதிர்பார்த்தேன் என்று தெரியவில்லை

விழா மலர்

விழா மலரில் நானும், நண்பர் கணபதியுடன் ஒரு கட்டுரை “GPUs powering the AI revolution,” என்று எழுதினோம். மற்ற நல்ல கேள்விகள் கட்டுரைகள்.

  1.  “தமிழில் ஒரு திற மூல சொல் திருத்தி” அதன் முக்கியத்துவம் பற்றி வள்ளிபுரம் சுகுந்தன் நல்ல கட்டுரை எழுதியுள்ளார்.
  2. பேரா. பொன்னவைக்கோ, TACE16 பற்றி எவரேனும் இதனை மென்பொருளாக்கி, பரிசோதித்தல் வேண்டும் என்று ஒரு தேவையை முன்வைத்தார்; இதற்க்கு Unicode extended plane-இல் இடம் உள்ளதாக ஒப்புதல் வந்துள்ளது என்றும் சொன்னார், ஆனால் எதுவும் மென்பொருட்கள் பொதுவாக/பரவலாக இதுவரை இல்லை.
  3. விழா மலரில் பேராசிரியர் திருமதி. ராஜம் கிருஷ்ணன், மாநாடு தலைவர் திரு. செ. இரா. செல்வகுமார் பற்றி சிலாகித்து அருமையாக ஒரு வாழ்த்து எழுதியிருந்தார்.


இன்னும் கூடுதலாக நேரம் செலவிடமுடியவில்லை என்பதும் மனதில் இருந்தாலும், So long Toronto, Canada. மீண்டும் சந்திப்போம் – நயாகரா, Space needle, போன்ற சுற்றுலாக்களை அப்போது காண்போம்; மனைவியும் வருவாளோ என்னமோ. அதுவரை வேலைகள் நிறைய உள்ளன.


ஆய்வு கட்டுரைகள் – தமிழ் இணைய மாநாடு

இந்த ஆண்டு தமிழ் இணைய மாநாடு டொரோண்டோ நகரில் நடைபெறவுள்ளது. இதனை ஒட்டி எழில் மொழி அறக்கட்டளை திட்டத்தின் கீழ் இரண்டு கட்டுரைகள் எழுதி ஒப்புதலுக்காக சமர்பித்துள்ளோம்.

இதில் எவையேனும் அல்லது இரண்டும் தேர்ந்தெடுக்கப்பட்டால் மாநாட்டில் பேச வசதியாக இருக்கும்.

கட்டுரை தலைப்புகள்,

  1. “எழில் – பொது பயன்பாட்டிற்கும், வெளியீடு நோக்கிய சவால்களும்”
  2. “Tamil Open-Source Landscape – Opportunities and Challenges”

பொறுத்திருந்து பார்ப்போம். கட்டுரையில் பங்களித்தவர்கள் அனைவருக்கும் நன்றி.




Ezhil Language Conference Articles

I’m happy to report that our collaboration has come up with 3 conference submissions for INFITT-2014 in Puducherry, India. While the articles are under review, I would like to only share the title and pending acceptance, the whole paper will be posted soon.


1. Learning Ezhil Language via Web

    Technical article on progress made in Ezhil Language and

2. Open-Tamil text processing tools

    Report efforts at Open-Tamil Python library for Tamil text processing

3. தமிழில் எப்படி நிரல் எழுதுவது ? – எழில் இணைய கருத்துக்கணிப்பு

    Survey results from poll conducted on Tamil programming language keywords

We are keeping our hands x-ed and we’ll see the outcomes by end of July, 2014.

Thanks to collaborators, @nchokkan, @msathia and @tshrinivasan.

2014 INFITT Tamil Internet Conference hosted in Puducherry

Very excited to read that 2014 has another INFITT Tamil Conference hosted in Puducherry, India, set up during the Sep 19-21, 2014. Please read the call for papers to the conference,  and consider publishing your latest + greatest Tamil software work. INFITT 2014 Puducherry, India. If you choose to publish, hurry! the deadline is June 30th.


Notably this year the conference has chosen to

  1. Focus on OpenSource Tamil Applications, and Software
  2. Focus on mobile platform Android, iOS software, Windows 8
  3. Let only in-person presentations at conference
  4. Cost of regristration @ $40 on or before June 30th, and $50 later.
  5. Consider becoming an INFITT member.


Read the whole press-release here