Andrew Sohn
Associate Professor
Voice:(973)596-2315
Computer Science Department
Fax:(973)596-5777
New Jersey Institute of Technology
Email: sohna -at- njit -dot- edu
Newark, New Jersey 07102-1982
https://web.njit.edu/~sohna
Methodical Introduction to the Linux Kernel - Process
on Amazon
Methodical Introduction to the Linux Kernel - Process
on IEEE-Wiley
Andrew Sohn
ISBN: 978-1-394-45775-5, December 2026, 352 pages
Wiley-IEEE Press
Research Projects/Interests
Linux kernel development
MPI+CUDA+ROCm: Programming a heterogeneous cluster of Nvidia CUDA-capable as well as AMD ROCm-capable machines,
a.k.a. Multi-node multi-GPU Programming,
for building and using scalable AI computing infrastructure
High performance computing, parallel computing
Activities
Courses I created and teach:
CS350 Intro Computer Systems
, junior-level course, offered almost every semester
CS433/CS680 Linux Kernel Programming
, senior/graduate course, offered once in a few semesters using my own books
CS455/CS655 GPU Cluster Programming aka MPI+CUDA programming
, senior/graduate course, offered once in a few semesters if possible
Courses I created and used to teach:
CS288 Intensive Programming
, sophmore/junior-level course, offered every semester
CS650 Computer Architecture
, graduate-level course
CS750 High Performance Computing
, graduate-level course
Old papers
Experience
Some Old Papers (before I took a long leave for industry)
Education
B.S. in Electrical Engineering, University of Southern California
M.S. in Computer Engineering, University of Southern California
Ph.D. in Computer Engineering, University of Southern California
Short bio
used for the 2018 Robert W. Van Houten Award for Teaching Excellence