Tutorials at ADCOM 2015

Title: Cryptography for the Connected World

Abstract : The Internet of Things (IoT) provides a framework for every object to be connected to the Internet. By the next decade day-to-day objects such as tables, chairs, refrigerators, and clothing, would have the ability to communicate with each other.
While IoT has huge potential, it also brings tremendous security threats. A cyber-security attack could bring down the entire system jeopardizing life and potential revealing sensitive information to adversaries. Cryptography would play an important role in curtailing these attacks. In this talk we would look at the various techniques in cryptographic algorithms and the issues involved in their implementation. We would discuss popular stream and block cipher constructions and also asymmetric ciphers such as ECC and RSA.


Chester Rebeiro is an Assistant Professor at IIT Madras. He completed his PhD from IIT Kharagpur and a post-doc from Columbia University. His research interests are in cryptography, system security, especially hardware security and side-channel analysis.



Santanu Sarkar received the PhD degree in mathematics from Indian Statistical Institute. He is currently an Assistant Professor at IIT Madras, India. Before that, he was a guest researcher at the National Institute of Standards and Technology. His main research interests include cryptology and number theory.




Title: IoT Technologies 101 – The DNA for Smart Cities

Abstract : Smart Cities is the buzz of India – with Government of India /sanctioning’ 100 smart cities, and it is all over the place. But, what is smart ? What are Smart Cities ? How are they realized ? What it takes ? What technologies are involved ? What solutions are required ? What engineering is called for ? What should be the engineering, charter to ensure that India is not left, well, smarting, otherwise.

Here the ingredients of Smart Cities are introduced: Technologies, Protocols, Algorithms, Hardware, Embedded Software, Systems, Applications, Interfaces, Security, Analytics.

Idea is to reduce the entry barrier perceived by engineers, developers, open up their imagination about the vista of creative possibilities, how to enable them to map a concept into a comprehensive solution. After participating in this tutorial, the participants would inculcate engineering confidence and insights to be productive contributors to engineering visions, efforts to contribute to realizing Smart Cities’ related technologies, solutions, businesses pan-India and across the world.

Participants will be benefitted if they are with:

  • Engineering Background – in Academics (B.E/B.Tech/BS, M.E/M.Tech/MS
  • Researchers
  • Practicing Engineers
  • Project Leads, Managers, Decision Makers
  • Investors
  • Customers, Users
  • Vendors


S Uma Mahesh, is a participant in and contributor to Indian semiconductor ecosystem over the past 25 years. He was founding team member of India’s first private semiconductor company (Arcus), India’s first next generation semiconductor company(Insilica), India’s semiconductor industry body (IESA). Mahesh is founder of among world’s first Wireless Sensor Networks, Internets Of Everything (IO(E)T) based intelligent automation solutions company, that is widely acclaimed for its innovations, and served, among others, Cisco.

Mahesh is currently working to develop IO(E)T based intelligent automation solutions for Industrial Infrastructure Automation, that is crucial for Make In India Mission. Mahesh is currently advisor for an IoT based Aqua Culture solutions company, guide for IOT curriculum for a high profile Bangalore university – including teaching couple of courses.
Mahesh is B.E from REC (NIT) Allahabad, M.Tech from IIT Madras, MBA from IIM Indore, PGDiploma in IPR from NLSIU.




Title:  Parallel Programming Basics

Abstract : This tutorial will provide will introduce you to the basics of Parallel Programming and an overview of Intel Tools for Parallel Programming. It will provide significant exposure to Intel Multi-core & Many-Core Processor based Systems and OpenMP, MPI and Hybrid Programming techniques.
The tutorial will also provide hands-on Lab Exercises covering the above concepts.
This tutorial is aimed at pre-final and final year engineering students with strong ‘C’ programming knowledge. Junior Faculty from Computer Science, Computer Engineering and Information Technology Departments will also find this program of considerable interest

Detailed Agenda

Session I  – Introduction to OpenMP

    • Introduction to Parallel Programming and Techniques
    • Introduction to OpenMP – Importance as a Standard and its Evolution;
    • OpenMP Basics, Creating threads, Loop Parallelism
    • Compiling OpenMP Programs
    • Data Types Basics – Private vs Shared Variables, Mixing Private and Shared Variables; Initializing Private Variables, Private vs FirstPrivate, atomic, Extra — ordered, barrier
    • Synchronization concepts – Need for Synchronization, Critical Regions, Reduction Operations
    • Function Calls, Parallel Sections, FLUSH Directive, Race Conditions and Deadlocks
    • Co-operative Compute and Communications; One-sided and co-operative data transfer, Work Load Sharing and Message passing
    • Hands-on Lab Exercises covering the above concepts

Session II   –  Introduction to MPI

  • Introduction to MPI – Structure of MPI Programs; Rank, Group, Communicators
  • MPI Data types, Tags; Format of MPI Calls
  • Communications – Point-to-Point, MPI Send and Receive; Blocking and Non-Blocking versions
  • Collective Communication – Synchronization, Collective Computation, Data Movement, Sources of Deadlocks, Solutions
  • Running Master-Slave MPI applications, Fairness in Message Passing
  • Timing and Performance Analysis of MPI Programs, Challenges in Debugging Parallel Applications
  • Hybrid Programming – Mixing MPI and OpenMP programs
  • Hands-on Lab Exercises covering the above concepts

Session III  – Intel Compilers and Tools

  • Introduction to Intel® Parallel Studio XE Cluster Edition
  • Composer XE
  • Libraries (MKL, TBB, etc)
  • Intel MPI
  • Analysis tools
    • VTune™ Amplifier XE
    • Intel® Trace Analyzer and Collector

Conclusion, Feedback

Server with Xeon+Xeon-Phi with pre-loaded OS, compilers & tools is hosted at Bangalore. Participants will have to bring their own devices and connect to the Server remotely


kiran-kannappanKiran Kannappan has over 18 years of work experience in several Fortune 500 companies such as Texas Instruments, Cadence, Intel, AMD and successful start-up ‘Seamicro’, in diverse geographical locations. He has worked on several x86-based CPU & Systems’ designs and has strong knowledge of Architecture, Design and Verification. At Cadence, he was content developer and trainer for Cadence’s Simulators and Verification IPs. At Calligo, he works on Code Modernization, Hardware Acceleration and Hardware assisted Software. He is passionate about knowledge-sharing and Training. As the lead-trainer from Calligo, he has delivered many Trainings on Parallel Programming and HPC Code Modernization in the country. Kiran holds Master’s Degree from Indian Institute of Science, Bangalore.

sharath-kumarSharath Kumar comes with Engineering background in Information Technology and a rich Product Development experience from earlier jobs. He has been with Calligo almost since inception and has contributed significantly to several Code Optimization/Modernization projects. He has strong understanding of Intel Xeon-Phi CoProcessor, Intel Tools and Compiler. He has attended many Intel Trainings and acquired lot of knowledge on latest x86 Servers, Hardware & Software of HPC clusters. Sharath has been a co-trainer on many of the Parallel Programming Trainings delivered by Calligo. He holds a Bachelor Degree from Visvesvaraya Technological University (VTU), Karnataka.