Me and Kim at Alkai beach
James Dinan    [curriculum vitae]

Office: 474 Dreese Labs
Email: dinan at cse.ohio-state.edu
Phone: 1.614.292.8578

395 Dreese Labs
2015 Neil Avenue
Columbus, Ohio 43210 USA

I am a graduate student in computer science at The Ohio State University. Before coming to OSU I earned my BS in Computer Engineering from UMass, Amherst and was a member of the Architecture and Language Implementation Lab. I am also an officer in OSU's Open Source Club and a representative on the graduate steering committee.

My advisor is Professor Sadayappan and I am a member of the High Performance Computing Research Laboratory. My work at OSU focuses on task parallelism, dynamic load balancing, and the programming models and scalable runtime systems needed to efficiently use task parallelism on modern HPC systems. My research interests include parallel programming models, scalable runtime systems, fault tolerance, high performance computing applications, and computer architecture.

I'm out of town right now on internship at Argonne National Laboratory in Illinois. I'll be back at OSU in the summer.

Teaching:

Autumn 2008
CSE 360: Introduction to Computer Architecture
Meeting Place: Dreese Labs 266, 12:30-1:18pm MTWF
Jim's Office Hours: Dreese Labs 474, 3:30-4:30 M, 10:30-11:30 Tu, 11:30 WF
Grader: Joshua Taylor <taylor dot 1430 at osu dot edu>
Josh's Office Hours: Caldwell 420. 11:30-12:30 TuTh

Selected Work:

High Performance Computing
Global Trees: A Framework for Linked Data Structures on Distributed Memory Parallel Systems
D. Brian Larkins, James Dinan, Sriram Krishnamoorthy, Atanas Rountev , P. Sadayappan
Proc. 20th Intl. Conference on Supercomputing. Austin, TX, Nov. 15-21, 2008.

Scioto: A Framework for Global-View Task Parallelism [pdf] [slides] [download]
James Dinan, Sriram Krishnamoorthy, D. Brian Larkins, Jarek Nieplocha, P. Sadayappan
Proc. of 37th Intl. Conference on Parallel Processing. Portland, OR, Sept. 8-12, 2008.

A message passing benchmark for unbalanced applications [doi]
James Dinan, Stephen Olivier, Gerald Sabin, Jan Prins, P. Sadayappan, Chau-Wen Tseng
Simulation Modelling Practice and Theory, In Press. June, 2008.

Dynamic Load Balancing of Unbalanced Computations Using Message Passing [pdf] [slides]
James Dinan, Stephen Olivier, Jan Prins, Gerald Sabin, P Sadayappan and Chau-Wen Tseng.
Proc. of 6th Intl. Workshop on Performance Modeling, Evaluation, and Optimization of Parallel and Distributed Systems (PMEO-PDS 2007). Long Beach, CA, March 26-30, 2007.

UTS: An Unbalanced Tree Search Benchmark [pdf]
Stephen Olivier, Jun Huan, Jinze Liu, Jan Prins, James Dinan, P Sadayappan and Chau-Wen Tseng.
Proceedings of 19th Intl. Workshop on Languages and Compilers for Parallel Computing (LCPC 2006).

Reconfigurable Computing
Hardware/Software Integration for FPGA-based All-Pairs Shortest-Paths [ps | pdf]
Uday Bondhugula, A. Devulapalli, James Dinan, J. Fernando, Pete Wyckoff, E. Stahlberg, and P. Sadayappan. Proceedings of the IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM '06), Apr 2006, Napa Valley, California.

Hardware/Software Codesign for All-Pairs Shortest-Paths on a Reconfigurable Supercomputer [ps | pdf]
Uday Bondhugula, A. Devulapalli, James Dinan, J. Fernando, Pete Wyckoff, E. Stahlberg, and P. Sadayappan. OSU-CISRC-1/06-TR13.

Dynamic SimpleScalar and DSSWattch
DSSWattch: Power Estimation in Dynamic SimpleScalar [pdf]
James Dinan, Eliot Moss. Technical Report; UMass ALI Lab. Amherst, MA.

Dynamic SimpleScalar is an extended version of the SimpleScalar architectural simulator that extends support for PowerPC targets to PPC/AIX, PPC/Linux, and PPC/OS-X. With DSSWattch, we have adapted Wattch's power modelling extensions to DSS's updated framework and PPC microarchitecture.

Presentations:

An Introduction to Unified Parallel C (UPC)
Presented May 4, 2009 at Argonne National Laboratory. Argonne, IL. [ppt]

Downloads and other Tidbits:

Scioto: Shared collections of task objects
Scioto is a runtime system to support task parallelism on distributed memory clusters. It is designed to interoperate with Partitioned Global Address Space (PGAS) programming models as well as other popular tools such as MPI. Project Homepage.
RAPC Tool (v0.3)
RAPC is a little BASH script to help people connect to the rapc machines. You'll also need to have html2text installed on your machine - most popular linux distros should have a package for it. Download RAPC. Screen Shot.
MPI Hostlist Writer (v0.3)
This is a handy little Perl script that makes writing host lists for running MPI jobs a snap. Download the Hostlist Writer. Screen Shot.
Add UPC filetype detection to Vim:
To help Vim recognize files with a .upc extension as UPC source files add the following to your .vimrc:
au BufNewFile,BufRead *.upc set filetype=c