Ahmad Lashgar, PhD

Home | Resume | Software | Twitter | Blog



profile for lashgar on Stack Exchange, a network of free, community-driven Q&A sites



Short bio: I received my PhD in Computer Engineering at University of Victoria, BC, Canada in August 2017. For completing my PhD, I worked on developing hardware/software optimizations for accelerators. I developed IPMACC framework for translating OpenACC applications to CUDA, OpenCL, and ISPC backends. The framework is publically available at GitHub. Currently, I am working as Senior HPC Researcher at MTT Innovation. We are working on next-generation of cinema projectors.

Contact: lashgar [at] uvic.ca





Latest from me:




Education:

PhD in Electrical and Computer Engineering
January 2014 to August 2017

Electrical and Computer Engineering Department
University of Victoria

Victoria, BC, Canada
Supervisor: Amirali Baniasadi
Thesis: Hardware/Software Optimizations for Accelerators
Supervisory Committee Members: Nikitas Dimopoulos, Mihai SIMA, Alex Thomo, and Xipeng Shen
[Dissertation, Slides]


M.S. in Computer Architecture
September 2010 to November 2012

School of Electrical and Computer Engineering
University of Tehran

Tehran, Iran
Thesis: Improving GPU Performance with Improved SIMD Efficiency
Supervisors: Ahmad Khonsari and Amirali Baniasadi
Approvals: Hamid Sarbazi-Azad, Sied Mehdi Fakhraie, and Saeed Safari
[Report (in persian), Slides]

more on education

B.S. in Computer Engineering - Hardware
September 2006 to June 2010

Jundi Shapor University of Technology
Dezful, Iran
Thesis: GPU architecture and comparision with CPU Architecture (بررسي معماري هاي پردازنده گرافيكي و مقايسه آنها با پردازنده مركزي)
[Report (in persian), Slides]
Supervisor: Mojtaba Soltani


Diploma in Math and Science
Alborz High School
Tehran, Iran

Publications:

  1. Ahmad Lashgar, Ehsan Atoofian, and Amirali Baniasadi
    Loop Perforation in OpenACC
    16th IEEE International Symposium on Parallel and Distributed Processing with Applications (ISPA2018)
    Melbourne, Australia, 2018, pp. 163-170.
    [Paper/Final version]
  2. Ahmad Lashgar and Amirali Baniasadi
    Efficient Implementation of OpenACC cache Directive on NVIDIA GPUs
    International Journal of High Performance Computing and Networking (IJHPCN), Special Issue on High-level Programming Approaches for Accelerators, Vol. 13, No. 1, 2019
    [Paper/Code/Final version]
  3. Ahmad Lashgar, Ehsan Atoofian, and Amirali Baniasadi
    TELEPORT: Hardware/Software Alternative To CUDA Shared Memory Programming
    Microprocessors and Microsystems: Embedded Hardware Design (MICPRO), Volume 63, 2018, Pages 169-181, ISSN 0141-9331
    [Paper/Final version]
  4. Ahmad Lashgar and Amirali Baniasadi
    OpenACC cache Directive: Opportunities and Optimizations
    In proceedings of Third Workshop on Accelerator Programming Using Directives (WACCPD2016), (in conjunction with SC2016)
    Salt Lake City, Utah, USA, November 14, 2016.
    [Paper/Slides/Code/Final version]
  5. Ebad Salehi, Ahmad Lashgar, and Amirali Baniasadi
    Employing Compression Solutions under OpenACC
    In proceedings of 21st International Workshop on High-Level Parallel Programming Models and Supportive Environments (HIPC2016), (in conjunction with IPDPS2016)
    Chicago, Illinois, USA, May 23-27, 2016.
    [Accepted version/Final version/Slides/Code]
  6. Ahmad Lashgar, Ebad Salehi, and Amirali Baniasadi
    A Case Study in Reverse Engineering GPGPUs: Outstanding Memory Handling Resources
    ACM SIGARCH Computer Architecture News - HEART '15, Volume 43 Issue 4
    [Accepted version/Final version/Code]
  7. Ahmad Lashgar and Amirali Baniasadi
    Employing Software-Managed Caches in OpenACC: Opportunities and Benefits
    ACM Transactions on Modeling and Performance Evaluation of Computing Systems (ToMPECS), Volume 1 Issue 1, March 2016
    [Accepted version/Final version]
  8. Ahmad Lashgar and Amirali Baniasadi
    Rethinking Prefetching in GPGPUs: Exploiting Unique Opportunities
    In proceedings of 17th IEEE International Conference on High Performance Computing and Communications (HPCC)
    New York, NY, USA, August 24-26, 2015.
    [Paper/Slides/Final version]
  9. Ahmad Lashgar, Ebad Salehi, and Amirali Baniasadi
    Understanding Outstanding Memory Request Handling Resources in GPGPUs
    In proceedings of The Sixth International Symposium on Highly Efficient Accelerators and Reconfigurable Technologies (HEART)
    Best Paper Candidate
    Boston MA, USA, June 1-2, 2015.
    [Paper/Slides/Code]
  10. Ahmad Lashgar, Alireza Majidi, and Amirali Baniasadi
    IPMACC: Translating OpenACC API to OpenCL
    In poster session of the 3rd International Workshop on OpenCL (IWOCL)
    Stanford University, California, USA, May 11-13, 2015.
    [Accepted version/Paper/Poster]
  11. Ahmad Lashgar and Amirali Baniasadi
    A Case Against Small Data Types on GPGPUs
    The 25th IEEE International Conference on Application-specific Systems, Architectures and Processors (ASAP)
    IBM Research, Zurich, Switzerland, June 18-20, 2014.
    [Paper/Slides/Final version]
  12. HARP: Harnessing Inactive Threads in Many-Core Processors
    Ahmad Lashgar, Ahmad Khonsari, and Amirali Baniasadi
    ACM Transactions on Embedded Computing Systems (TECS) - Special Issue on Design Challenges for Many-Core Processors (DCMP), Special Section on ESTIMedia'13 and Regular Papers, Volume 13 Issue 3s
    [Accepted version/Final version]
  13. Towards Green GPUs: Warp Size Impact Analysis
    Ahmad Lashgar, Amirali Baniasadi, and Ahmad Khonsari
    4th International Green Computing Conference (IGCC 2013) WorkInProgress Session
    Arlington, VA, USA, June 28, 2013.
    [Paper/Slides]
  14. Warp Size Impact in GPUs: Large or Small?
    Ahmad Lashgar, Amirali Baniasadi, and Ahmad Khonsari
    Sixth Workshop on General Purpose Processing Using GPUs (GPGPU6), (Held with ASPLOS XVIII)
    Houston, TX, USA, March 16, 2013.
    [Paper/Slides/Previous Technical Report]
  15. Inter-Warp Instruction Temporal Locality in Deep-Multithreaded GPUs
    Ahmad Lashgar, Amirali Baniasadi, and Ahmad Khonsari
    26th International Conference on Architecture of Computing Systems (ARCS 2013)
    Prague, Czech Republic, February 19, 2013.
    [Paper/Slides/Code]
  16. Dynamic Warp Resizing: Analysis and Benefits in High-Performance SIMT
    Ahmad Lashgar, Amirali Baniasadi, and Ahmad Khonsari
    The 30th IEEE International Conference on Computer Design (ICCD 2012) Poster Session
    Montreal, Quebec, Canada, October 1, 2012.
    [Paper/Extended version/Poster]
  17. Performance in GPU Architectures: Potentials and Distances
    Ahmad Lashgar and Amirali Baniasadi
    9th Annual Workshop on Duplicating, Deconstructing, and Debunking (WDDD 2011), (in conjunction with ISCA 2011)
    San Jose, CA, USA, June 5, 2011.
    [Paper/Slides]

Software:

Side Projects:

  • GlobeNow! Find What Is Happening In A City Right Now!
    [Paper/Slides/Code]
    Latest: service shutdown as of April 6, 2020 for not being profitable.
    Idea: Have you ever been bored and needed an app to tell you what events are happening around you right now? Ambitiously, this is the goal of this project! I started with the towns I'm living in, e.g. Victoria and Vancouver, and expanded the project to 16 major cities in north America so far, e.g. New York and Los Angeles. Latest services and more information are available at http://www.twitter.com/glbnow
  • PromoteBud! Commercial Service for Advertising Certain Product/Service
    Idea: PromoteBud! is a collection of tools to promote certain product/service via social media. Check the website to see how it works. For now, it supports Twitter and Telegram. Instagram is coming up next.

Honors & Awards:


Curious to know more? Click here

Technical Reports:

  • Ahmad Lashgar
    Using OpenACC for Parallelizing Lawrence Livermore loops
    April 2017, [Report / Code]
  • Ahmad Lashgar, Alireza Majidi, and Amirali Baniasadi
    IPMACC: Open Source OpenACC to CUDA/OpenCL Translator
    December 2014, [Report / Code]
  • Ahmad Lashgar, Amirali Baniasadi and Ahmad Khonsari
    Investigating Warp Size Impact in GPUs
    May 2012, [Report]
  • Ahmad Lashgar, Amirali Baniasadi and Ahmad Khonsari
    COLD: Contention-aware Warp Scheduling for High-Performance SIMT
    May 2012, [Report]

Talks:

  • CUDA Programming
    Two-Day Workshop on Multicore Programming, Institute for Research in Fundamental Sciences (IPM)
    Winter 2013, Slides
  • Getting Started with Directive-based Acceleration: OpenACC
    Institute for Research in Fundamental Sciences (IPM)
    Fall 2012, Slides
  • An Evaluation of Throughput Computing on CPU and GPU
    University of Tehran, Instructor: Sied Mehdi Fakhraie
    Fall 2011, Slides
  • GPU Architecture
    Sharif University of Technology
    Fall 2010
  • Clocking of Intel Xeon 45nm
    University of Tehran, Instructor: Sied Mehdi Fakhraie
    Fall 2010, Slides
  • Optical Processor
    Jundi Shapor University of Technology
    Spring 2009, Slides

Volunteer:

  • Internet and Technical Chair at The 17th CSI International Symposium on Computer Architecture & Digital Systems (CADS 2013)
    October 2013
  • Start Line Assistant at The 25th Annual Times Colonist 10K Running Competition (TC10K)
    April 2014, Acknowledgment
  • Donation Barrel Assistant at The 26th annual Victoria Symphony Splash (VSP2015)
    August 2015
  • Head Soccer Coach at U13 Marpole Soccer Club
    December 2015 - March 2016

Teaching:

  • Laboratory Instructor of Real Time Computer Systems Design Project, Administrator Saman Khoshbakht
    Spring 2017, University of Victoria
  • Laboratory Instructor of Microprocessor-Based Systems, Administrator Daler N. Rakhmatov
    Fall 2016, University of Victoria
  • Teaching Assistant of Parallel Processing, Administrator Sied Mehdi Fakhraie
    Fall 2013, University of Tehran
  • Teaching Assistant of Parallel Processing, Administrator Sied Mehdi Fakhraie
    Fall 2011, University of Tehran
  • Teaching Assistant of Advanced Computer Architecture, Administrator Omid Fatemi
    Fall 2011, University of Tehran
  • Teaching Assistant of Language and Automata, Administrator Mehdi Enayat Zare,
    Spring 2010, Jundi Shapor University of Technology
  • Teaching Assistant of Image Processing, Administrator Masoud Mazloom
    Spring 2010, Jundi Shapor University of Technology
  • Teaching Assistant of Foundation of Programming, Administrator Farshid Marbouti
    Spring 2009, Jundi Shapor University of Technology
  • Teaching Assistant of Programming Course, Administrator Mohsen Yoosefi
    Spring 2008, Jundi Shapor University of Technology
  • Teaching Assistant of Object-Oriented Programming, Administrator Mehdi Enayat Zare
    Fall 2007, Jundi Shapor University of Technology

Academical Projects:

  • NOC Switch, Instructor: Zainalabedin Navabi
    January 2011, University of Tehran, Code
  • Equality Comparator Layout, Instructor: Sied Mehdi Fakhraie
    November 2010, University of Tehran, Report
  • Images Noise reduction, Instructor: Masoud Mazloom
    June 2010, Jundi Shapor University of Technology, Code
  • Grand Master, Instructor: Masoud Mazloom
    January 2010, Jundi Shapor University of Technology, Code
  • Zebra Puzzle using RBT & MRV, Instructor: Masoud Mazloom
    November 2010, Jundi Shapor University of Technology, Code
  • Travelling Salesman Problem using Genetic Algorithml, Instructor: Masoud Mazloom
    December 2009, Jundi Shapor University of Technology, Code
  • Scientific Calculator with C++, Co-workers: Aliasghar Dashkhaneh, Instructor: Mehdi Enayatzare
    January 2008, Jundi Shapor University of Technology
  • Snake Game with Pascla, Co-workers: Aliasghar Dashkhaneh, Asghar Mohamadpour, Instructor: Farshid Marbouti
    January 2007, Jundi Shapor University of Technology, Code