CSCI 5551:
RESEARCH
PROJECT IDEAS
Professor Alaghband
- Parallel
hardware/architecture: Design
algorithms and/or systems to demonstrate specific features or
effectiveness of
performance improvement (or lack of) using various methods using the
following
factors:
- Parallel
computing platforms
- Interconnection
Networks
- Memory
Performance
- Cache
Coherence
- Parallel
Languages/compiler
optimizations: Compare
performance of algorithms implemented in
different parallel programming languages, implement, test, and compare
performance and effectiveness of parallel compiler optimizations.
- OpenMP,
PThread, Cilk, Force, Intel Thread Building Blocks,
Parallel programming
for Java
- MPI, Map/Reduce
- CUDA, OpenCL
- Operating
Systems for parallel
processing: Design
and
implement improved scheduling for resource sharing, allocation, process
scheduling, etc. for specific parallel platforms.
- Parallel
challenges and solutions: Design
algorithms and/or systems with the goal of demonstrating performance
and
effectiveness of optimization for the following factors
- Load
balancing
- Synchronization
tools and implementations
- Parallel I/O
- Communication
costs
- Scalability
- Parallel overheads
- Recursion
- Parallel
algorithms/applications
- Numerical
methods:
Implement and compare various numerical methods
- For example,
implement and compare performance and
convergence of two iterative methods for
solving systems of equations: Gauss Seidel and Gauss Jacobi
- Physics
problems:
N-body, Fluid Dynamics, etc.
- Graph
algorithm:
minimum spanning tree, Prim's algorithm, shortest path, Dijkstra’s
algorithm,
Johnson’s algorithm, connected components, etc.
- Sorting
algorithms:
implement and compare sorting algorithms for different platforms:
quicksort,
radix sort, bitonic sort, bucket sort etc.
- Graphics
problems:
ray tracing,
rendering, collision detection, etc.
- Bioinformatics: sequencing alignment,
molecular
dynamics
- Artificial
Intelligent:
genetic
algorithm, neural network, search algorithms, etc.
- Data mining: association rule mining,
classification algorithms, clustering algorithms
- Image processing
- Parallel
databases
- Stimulation
software