CSC 543 - Multiprocessing &
Concurrent Programming Assignment 5 Talks
Talks to be scheduled in class for April 28 & May 5
April 28 talks may be work-in-progress.
Materials are due via D2L by end of May 5 (slides & demo
code, prefer zipped, include a README on
how to run code).
This page is from spring 2021. We are going over this for spring
2023 project ideas.
Dr. Dale E. Parson
Each talk will run 10
minutes, including setup time
& questions / answers.
Plan on talking about 8 minutes.
Inform your talk by writing demo code.
The intent of the code is to familiarize yourself in a
concrete way with the topic. It is demo code, not an entire
application.
It does have to have at least some custom work. It cannot just
be downloaded from the net.
You may download & enhance. Talk with me about the scope
of the code if you are uncertain.
You do not need to write a paper. Pretend
to be doing a professor's job for 8 to 10 minutes.
Grading will be on clarity of the talk, clarity of the
slides with optional demo, ability to answer questions.
Grading criteria, 25% each:
Is the work non-trivial, e.e., not just
downloaded?
Is the presentation clear?
Are the materials complete and clear?
Can the presenter answer questions about
the project?
Topics for spring 2021 Try to let Parson know by 2 PM
Monday April 26 if you can present April 28
6:00
Vivian Azar
java.util.concurrent.Exchanger
6:10
Trisha Badlu
java.util.concurrent.CompletableFuture
6:20
Devon Blizard
Enhancing assignment 4
with the Executor Completion Service
6:30
Autumn Coulton
java.util.concurrent.Phaser
6:40
Noah
Cregger
Accelerating Statistical Data
Analysis via Python forking processes
April 28 Bob
Elward
Concurrent programming in C#
6:50
Faith
Evans
Image pre-loading &
manipulation in Processing
7:00
Diki Ghale
Worker threads in node.js.
7:10
Christopher Kelly
Rust language &
concurrency.
7:20
Tanner Kern
A ray tracer with CUDA
7:30
BREAK
7:40
Eric Moul
How to use
IntUnaryOperator and IntBinaryOperator operator parameters
with AtomicIntegers.
7:50
Griffin Nye
Recursive partitioning and 3
pixel Photos to work in tandem
8:00
Emre
Shively-Ertas Multiprocessing
in Unity
8:10
Aaron Simmons
PlayerExplicit
using POSIX threading library (pthreads)
8:20
Bradly Soellner
Raymarching-based
render engine w. locks & shared memory from Python's
multiprocessing lib.
8:30
Andrew Steele
CSC480
Assignment 3 on time-recursive photos of the Processing canvas
including bonus points
8:40
Liza Turk
ReentrantReadWriteLock
8:50
Joseph Workoff
PlayerExplicit in C++, using C++14's thread, mutex,
and condition variable libraries
Ideas for spring 2023
Unix semaphores, shared memory, and message buffers between
processes.
Topics used in fall 2018
STUDENT ReentrantReadWriteLock
STUDENT ReactiveX
STUDENT Concurrency in the Go language
STUDENT Multithreading in the Unity game engine
STUDENT Concurrency in PHP and MySQL
STUDENT Multithreading in Python
STUDENT Concurrent programming in Racket
You can pick a new topic.
The Rust language is a new potential topic.
We didn't do anything with the executor completion service.
Enhance assn4 to use the instead of blcoking client requests,
where each client thread submits its tasks and then blocks on
the compeltion service instead of blocking on the
Future<String> returned from submit(task).
You can demo anything from java.util.concurrent
java.util.concurrent.atomics java.util.concurrent or other
multihreading in the Java library *with my permission*.
Possible topics from spring 2015
and fall 2016