Hello! I am Alireza Poshtkohi, an enthusiastic researcher in an intersection between computer science, and electrical engineering, applied mathematics and theoretical physics.
I love science and am extremely self-motivated. For this reason, I have instructed myself through different scientific materials by reading a multitude of textbooks and papers beyond my formal education at the university. I have a strong background in mathematics; and this special interest has encouraged me, since the year 2014, to study various references in applied mathematics and theoretical physics and to see how I could make use of computer science for solving challenging scientific and engineering problems, particularly, High-Performance Computing (HPC), Computer Architecture, Modeling and Simulation, and Scientific Computing. Learn More
2002 - Present
My research and work spans but not limited over the following topics without any particular priority order:
● Computer Science
▹ High-performance computing (HPC)
▹ Operating systems
▹ Distributed systems (Cluster, Grid and Cloud Computing)
▹ Computer networks (particularly network protocols)
▹ Parallel algorithms
▹ Parallel programming languages and compiler design
▹ Modeling and simulation
▹ Parallel and distributed simulation (PADS)
▹ Reverse computation
▹ Computer architecture
▹ Embedded computing systems
▹ Artifical intelligence (AI)
▹ Machine learning
▹ Concurrent data structures
▹ Distributed relational databases
▹ Cryptography and network security
▹ Web engineering
● Electrical and Elerctronic Engineering
▹ Computer-aided design (CAD) for electronic design automation (EDA)
▹ Non-linear circuit theory
▹ Parallel non-linear circuit modeling and simulation
▹ Analog-mixed signal (AMS)
▹ Analog and digital circuit design
▹ Low-power circuit design
▹ System-on-Chip (SoC)
▹ Very-large-scale integration (VLSI) circuits
▹ Solid-state physics
▹ Semiconductor device simulation and modeling (TCAD)
▹ Quantum electronics
● Applied Mathematics
▹ Numerical analysis
▹ Numerical linear algebra
▹ Mathematical modeling
▹ Approximation theory
▹ Partial differential equations
▹ Numerical optimization
▹ Scientific computing
● Pure Mathematics
▹ Calculus of variations
▹ Integral equations
▹ Differential geometry
▹ Complex analysis
● Theoretical Physics
▹ Parallel multiphysics modeling and simulation
▹ Quantum mechanics
▹ General relativity
2004 - Present
I have carried out a long standing research to build several distributed middleware components for Grid and Cloud computing from .NET Framework to native code in C++. Recently, I have completed a unified software infrastructure called Parvicursor to facilitate the design of Grid and Cloud Computing systems which includes several critical services for upper middleware layers. Parvicursor infrastructure is a low-level middleware system grounded on a specialized concept of distributed objects and native ECMA.NET-compliant execution for highly concurrent distributed systems, to make writing middleware easier on heterogeneous platforms. It takes care of low-level network programming interfaces for Grid/Cloud-specific platforms and allows the middleware architects to focus their efforts on their middleware logic with the help of the integrated, scalable Parvicursor Execution System. xThread provides the capability of remote code execution, dynamic distributed object registration and activation, transparent communication on the underlying transport protocols, data marshaling and unmarshaling, distributed operation dispatching, checkpoint/restore, and etc. xSec introduces techniques for the authentication of users and secure communication through TSI. xDFS proposes utilities and libraries for transmitting, storing and managing massive data sets. PCAS and ZCCI present interfaces for designing optimized and highly concurrent network services. Over a decade of work on two research projects DotGrid and Parvicursor, many ideas and extensions have emerged for our future research which their number and descriptions are so much. We plan to design and implement higher-level middleware layers atop Parvicursor APIs and services which will facilitate the construction of high-end distributed systems particularly CloudComputing. One of the most important future plans is to design a sandboxing infrastructure to achieve the features available in the Code Access Security (CAS) model of ECMA.NET standard in the native Parvicursor infrastructure, this will open new insights in the design of Cloud infrastructures without the need for virtualization platforms to increase the performance as possible as close to the efficiency of native code. For next versions of the xDFS protocol, we plan to extend and implement the protocol based on more novel hybrid models to achieve ultimate performance.
2002 - Present
I have implemented a large number of network protocols. As a fundamental result of information age, communication mechanisms and data transmission protocols provide an infrastructural foundation for the emergence and evolution of enormous computing paradigms, and integrating data access on a world-wide scale. I designed a high-throughput file transfer protocol for Big Data applications in Grid and Cloud environments in contrast to the de-facto GridFTP protocol in data grid and data clouds. I have implemented a wide range of parallel I/O mechanisms for this protocol. In this regard, I’m interested in network protocol design and implementation for high-speed interconnect networks such as InfiniBand over WANs.
2005 - Present
I developed a lightweight secure transport protocol. I made use of this protocol to build a striped high-throughput file transfer system optimized for many-core machines in the Cloud. I have a strong background on symmetric and asymmetric cryptography algorithms and so I’m interested to implement such compute-intensive tasks on accelerators like GPUs and FPGAs.
2009 - Present
I have developed several kernel-space components for High-Performance Computing (HPC). Also, I’m very interested in many-core operating system design.
2010 - Present
Programming languages have been one of my primary motivations toward computer science after passing a course in programming when I was an undergraduate student. I’m indebted to that course that built my mind towards the compilation of a part of current research. I have a deep understanding of modeling and simulation of discrete event, continuous-time and dynamical systems. I have been working on Parallel Discrete Event Simulation (PDES) for more than four years and thus I developed a new parallel programming and simulation language and parallel SLDL (System-Level Description Language) for modeling and simulation of parallel computer architectures and embedded systems. This language is accompanied with a comprehensive compiler suite written in LLVM/Clang. This language can be used as a replacement for parallel simulation of existing SLDLs and HDLs such as SystemC, SpecC, VHDL and Verilog.
The key contributions of this research are as follows:
● For the first time, we apply optimistic PDES to hardware-specific system-level description lan-guages in ESL, including, SystemC, SystemVerilog and SpecC.
● For the first time, we allow different hardware models at different electronic abstraction levels to be executed by optimistic synchronization, including, many-state processors, memories, buses, routers, and so on. This is achieved by proposing a hybrid state saving scheme for optimistic execution of HDLs and SLDLs. ● We propose a new optimistic PDES language called Optimistic System Modeling Language (OSML) along with its distributed simulation kernel, which have built-in support for existing HDL and SLDL features. Two PDES’s systems programming and application programming models are precisely defined. We benefit from OSML as an intermediate parallel simulation language (PSL) in where other hardware languages are translated into OSML. Therefore, OSML can also provide cross-language interoperability through language compilers and tools for co-simulation.
Furthermore, I have excellent familiarity with formal specification and mathematical modeling of parallel programming languages such as Structural Operational Semantics (SOS) and Process Algebra. Applying parallel simulation to different real-world scenarios specially modeling high-performance parallel distributed computers and computer networks is my another research topic.
2009 - Present
I have developed several CAD tools for power-performance evaluation of digital and analog electronics systems. My Master thesis was related to parallel power estimation of digital electronic systems by Grid Computing approaches. I implemented a unified Cloud-based ESL CAD tool called Troodon to automate the tasks of de-scription, visualization, compilation, massively distributed parallel simulation and performance monitoring of all the mainstream HDLs and SLDLs on many-core HPC clusters. Designers write their model’s blueprint using one of the hardware description languages such as OSML, SystemC and UML. They are connected to the Cloud-based Troodon tool through a browser and do their time-consuming simulation tasks. Models are graphically displayed to the users, and they can view the simulation wave forms and performance monitoring plots inside a single window in real time. They can edit their models by Graphical User Interface (GUI) components in addition to uploading their files. Upon submission of a design to the Cloud, Troodon automatically carries out the remaining tasks for parallel simulation. SystemC is considered as a high-level intermediate language in this flow. The models specified in UML, VHDL, Verilog and SystemVerilog are first converted into equivalent SystemC codes by source-to-source translators. If the model is entirely written in OSML, no extra work is done on it at this stage. Then, an optimistic compiler developed atop LLVM/Clang, which meets the requirements of OSML semantics, is invoked to transform the SystemC model into OSML. It is composed of a frontend and a backend: the former constructs an abstract syntax tree (AST), and the latter performs the AST mapping to OSML codes. Because none of the mentioned languages, including SystemC, can directly be mapped into OSML, multiple transformations are made on the input SystemC codes. OSML contains functionalities that are not available in traditional languages. OSML codes are compiled by a conventional C++ compiler and linked with parallel runtime libraries (e.g. OSML kernel), and a parallel simulation executable is generated. OSML cloud manager runs on the IaaS-based OpenStack platform, which distributes PDES executive across the data center and does monitoring tasks.
2013 - Present
I have a strong background in applied mathematics and calculus particularly advanced differential equations and numerical analysis of continuous-time systems. I have worked with advanced numerical techniques for solving mixed-signal, multi-physics and scientific computing problems in circuit and system theory, and nanoscale semiconductor devices: ordinary differential equations (ODEs) in state-space equation formalism, and nonlinear partial differential equations (PDEs) including time-domain finite difference, finite element methods, Boltzmann transport equation, and coupled quantum monte-carlo algorithms. Recently, I have developed a novel spacetime-parallel PDE solver using exponential integrators to be used in supercomputers for large-scale intensive computational problems. I developed the entire theory of this new approach from scratch, including, the action of a matrix exponential upon a vector, preconditioner, and time-parallel numerical integration methods.
2012 - Present
I adore teaching at university and thus I have designed many courses. I have lectured in both departments of computer engineering (CE) and electrical engineering (EE). A list of my previous courses is as follows:
● Parallel Algorithms (in CE Dept.)
● Advanced Algorithms (in CE Dept.)
● Parallel and Distributed Simulation (in CE Dept.)
● Modeling and Performance Evaluation of Computer Systems (in CE Dept.)
● Computer Architecture (in EE Dept.)
● Operating Systems (in CE Dept.)
● Hardware/Software Co-Design (in CE Dept.)
● Electrical Circuits II (in EE Dept.)
● Advanced Programming (in CE Dept., and in EE Dept.)
● Logic Circuits (in EE Dept.)
● Internet Engineering (in CE Dept.)
● Web Design and Development (in CE Dept.)
● Systems Programming in UNIX-style Operating Systems (in CE Dept.)
● Computer Networks' Lab (in CE Dept.)
● Operating Systems' Lab (in CE Dept.)
● Applications of Computer Science in Dentistry (in Dentistry Dept.)
2012 - Present
● Lecturer, Department of Computer Engineering, Sharif University of Technology, Tehran, Iran
● Lecturer, Department of Computer Engineering, Shahed University, Tehran, Iran
● Lecturer, Department of Electrical Engineering, Azad University of Shahr-e Rey, Tehran, Iran
● Lecturer, Department of Computer Engineering, Azad University of Shahr-e Rey, Tehran, Iran
● Lecturer, Department of Computer Engineering, Azad University of Buin Zahra, Buin Zahra, Iran
● Lecturer, Department of Dentistry, Shahed University, Tehran, Iran
2005 - Present
I have prepared and presented several technical workshops as follows:
● Web Programming Fundamentals in PHP, Summer 2018, Shahed University, Tehran, Iran
● HPC Fundamentals and Parallel Programming, Spring 2017, Shahed University, Tehran, Iran
● Fundamentals and Applications of Parallel Discrete Event Simumlation (PDES), Spring 2015 and 2016, Sharif University of Technology, Tehran, Iran
● Applications of Information Technology (IT) in Pharmaceoutical Industries, Winter 2015, Azad University Pharmaceutical Sciences Branch, Tehran, Iran
● Research on Desktop Grids, Spring 2006, CCGrid2006, Singapore
● Windows Systems Programming, Summer 2005, Azad University of Qazvin, Qazvin, Iran
2006 - Present
I have been providing numerous services to the academic communities as follows:
● HPC Center's Administrator, Shahed University, Tehran, Iran. I have worked for many years in High-Performance Computing (HPC) and I'm now the manager of Shahed University's HPC center where we provide computational services to other departments such as nanoelectronic, optoelectronics, physics and civil engineering.
● Research Director, Parallel & Distributed Systems Lab (PDSL), Department of Computer Engineering, Sharif University of Technology, Tehran, Iran. I founded this lab in 2014 in collaboration with Prof. Shaahin Hessabi. PDSL conducts research mainly in the fields of Distributed Systems and Parallel Computing. PDSL performs research in all aspects of parallel and distributed systems with a particular emphasis on many-core technology, cloud computing, grid computing, operating systems, parallel algorithms, GPU computing, high-performance network architectures and protocols, and Parallel Discrete Event Simulation (PDES).
● Seminar Advisor, I have supervised some seminars in CE department.
● Researcher, University of Melbourne, Melbourne, Australia. In 2006, I started a short-term collaboration with Prof. Rajkumar Buyya on implementing some services for DotGrid and Alchemi Grid Computing projects.
2001 - 2010
For virtually 10 years, I was developing national online social network services which hosted millions of users. In 2001, I started to develop one of the first blogging services in my home country called IranBlog.com. In 2006, I developed the first Twitter-like service in my country that had Facebook-style social network capabilities named Peyghamak.com. These projects were developed based on distributed computing concepts where the service could scale up on demand. For this reason, I developed a course to teach students with web design and development in university. I was with World Wide Web (W3) since its beginning days.
2002 - Current
I have implemented a large number of software projects and large-scale organizational automations portals, for example, image processing for industrial applications and realtime portals for news agencies.
I have written a textbook in distributed systems, which is currently under final publication with Taylor & Francis, Florida, USA. This book spans over my obtained experience to build different distributed middleware components particularly in Grid and Cloud Computing. It teaches the reader how to construct a complex distributed software infrastructure from the ground-up.
Furthermore, I have a new plan to write two different book titles in Modeling & Simulation. More information will be posted here in the future as soon as they are available in this regard. The list of my books comes as follows:
 A. Poshtkohi, M.B. Ghaznavi-Ghoushchi, Building A Distributed Software Infrastructure for Cloud and Grid, Taylor & Francis (CRC-Press) Publishing, USA, 2019. Link on Google Books
 A. Poshtkohi, M.B. Ghaznavi-Ghoushchi, K. Saghafi, Extreme-Scale Spacetime-Parallel Modeling and Simulation of Ordinary and Partial Differential Equations Using Exponential Integrators, 2019, under preparation.
 A. Poshtkohi, M.B. Ghaznavi-Ghoushchi, K. Saghafi, Optimistic Synchronization and Tool Flow for Massively Accelerating SystemC on Many-Core HPC Clusters, under finalization, 2019.
 A. Poshtkohi, M.B. Ghaznavi-Ghoushchi, K. Saghafi, PSML: Parallel System Modeling and Simulation Language for Electronic System Level, Journal of Supercomputing, November 2018. (IF=1.532), doi: 10.1007/s11227-018-2682-1, View Online.
 A. Poshtkohi, M.B. Ghaznavi-Ghoushchi, K. Saghafi, Optimistic Modeling and Simulation of Complex Hardware Platforms and Embedded Systems on Many-Core HPC Clusters, IEEE Transactions on Parallel and Distributed Systems, July 2018. (IF=3.971), doi: 10.1109/TPDS.2018.2860014, View Online.
 A. Poshtkohi, M.B. Ghaznavi-Ghoushchi, K. Saghafi, The Parvicursor Infrastructure to Facilitate the Design of Grid and Cloud Computing Systems, Computing, 99:10 (2017), 979-1006. (IF=1.654), doi:10.1007/s00607-017-0541-1, View Online.
 M. MollaMotalebi, R. Maghami, A. S. Ismail, A. Poshtkohi, The Efficiency Challenges of Resource Discovery in Grid Environments, Cybernetics and Systems, 45:8 (2014), 671-692. (IF=1.197), doi: 10.1080/01969722.2014.972100, View Online.
 A. Poshtkohi, M.B. Ghaznavi-Ghoushchi, DotDFS: A Grid-based High-Throughput File Transfer System, Parallel Computing, 37 (2011) 114-136. (IF=0.938), doi: 10.1016/j.parco.2010.12.003.
 A. Poshtkohi, A.H. Abutalebi, S. Hessabi, DotGrid: A .NET-based Cross-Platform Software for Desktop Grids, Int. J. Web Grid Serv. 3 (3) (2007) 313-332. (IF=1.071), doi: 10.1504/IJWGS.2007.014955, View Online.
 A. Poshtkohi, M.B. Ghaznavi-Ghoushchi, A Concurrent Framework for High Performance File Transfers in Grid Environments, in: Proceedings of the 3th International Conference on Computer and Electrical Engineering (ICCEE 2010), 16-18 November 2010, Chengdu, China, Download.
 A. Poshtkuhi, A. Abutalebi, L. Ayough, S. Hessabi, DotGrid: A .NET-based Infrastructure for Global Grid Computing, in: Proceedings of the 6th IEEE International Symposium on Cluster Computing and the Grid, 16-19 May 2006, (CCGrid'2006), Singapore, Download.
 A. Poshtkuhi, A. Abutalebi, L. Ayough, S. Hessabi, DotGrid: A .NET-based Cross-Platform Grid Computing Infrastructure, in: Proceedings of the IEEE International Conference On Computing and Informatics 2006 (ICOCI'06), June 6-8, Malaysia, 2006, Download.
Shahed University, Tehran, Iran
He is currently an associate professor in Electrical and Electronic Engineering with Shahed University, Tehran, Iran.
Sharif University of Technology, Tehran, Iran
He is currently an associate professor in Computer Engineering with Sharif University of Tecchnology, Tehran, Iran.
Shahed University, Persian Gulf Highway, Tehran, Iran
a.poshtkohi AT shahed.ac.ir