Welcome to my MSCS project page. This page contains links to repositories of some of the projects that I worked on as part of the coursework for an MSCS. The work is pretty old (I worked on the degree between 1995 and 2000) and the work is becoming increasingly irrelevant, but maybe you'll find something useful.
If you can't get enough of my projects, check out the links in the column on the right for some of the other stuff I've published.
If you have nothing better to do, you can e-mail me at mdipperstein@gmail.com
This project was created with the help of Kevin O'Gorman (kogorman@cs.ucsb.edu)
The ATM Simulation program consists of three independent components: the User Interface, the Web-Monitor, and the Data Repositories (Bank Branches). The components of the ATM Simulation are layered such that the User Interface lies on top of the Web-Monitor, which lies on top of the Data Repositories. Each component of the ATM Simulation communicates only with the component layered above it and the component layered below it. Each component is also designed so that it may be monitored and debugged through a web browser outside of the regular program operation.
Functional Requirements Document
Design Document
Observations and Innovations (This is the part
that is the most interesting)
The ATM project source may be cloned or downloaded from this GitHub
repository:
https://github.com/michaeldipperstein/atm.
The source is written in a combination of PERL
script and HTML. The PERL script files are in the repository's
cgi
subdirectory. The HTML are in the repository's
html
subdirectory.
After cloning or downloading the repository:
cgi
subdirectory to the directory
where your server executes cgi.
html
subdirectory to the directory
where you keep you HTML files.
NOTE: The PERL scripts use semaphores and shared memory. Not all PERL distributions provide support for semaphores and shared memory. It's possible to use files instead of shared memory, and file renaming as a means of obtaining a semaphore (lock).
This project was written in the latter half of a 10 week course on computer networks. The goal of the project is to demonstrate some of the techniques that may be used in real-time mixing of UDP data over the current IP network. It also sheds some light on areas that require advance consideration before a given data mixing service is implemented. Such areas include:
I quickly threw together this brief description of the project objectives and source code back in 2000. hopefully it's good enough to get the job done, because the source and it's comments are my only other documentation.
The mixer source is written to build and execute on a Solaris 2.6
workstation. I vaguely remember running it on a machine with a 32-bit
x86 Linux 2.2 kernel, but I may have just telnet
ed to the
Solaris machine form there.
The UDP mixer project source may be cloned or downloaded from this GitHub
repository:
https://github.com/michaeldipperstein/mixer.
This project provides information on the lessons learned and the results of an attempt to translate the Stanford Parallel Applications for Shared Memory (SPLASH-2) ocean simulation program (Ocean) to both Pthread an MPI implementations. Ocean is one of several applications in the SPLASH-2 library, intended to benchmark performance on various systems. Initially I set out to use the Ocean program to compare Pthread and MPI performance on both an SGI Origin 2000 and a Cray T3E. Though I did not accomplish my goals, there are still several valuable lessons learned to report along the way.
Wayback Machine mirror of the SPLASH-2 home page
Initial Report (PDF)
Additional Results and Comparisons (PDF)
The ocean project source and documentation may be cloned or downloaded
from this GitHub repository:
https://github.com/michaeldipperstein/ocean.
The source is written to operate on an SGI Origin 2000, though I have executed the p-thread version on a Solaris machine.
Libraries converting many of the ANL PARMACS macros for use with pthreads, MPI, and fork with shm on the SGI Origin 2000 are include in the GitHub repository.
This project was created with the help of Matt Maxel (mmaxel@isle.net) and Eric Indiran (epi@plpt.com)
This started as a 7 week project on "DNA Sequence Alignment", after about a week of study, we came up with the following plan. It didn't take to long to realize that we were too ambitious. The project evolved into a survey of nucleotide database search techniques.
PowerPoint presentation
Project paper
Definitions of related terms
The source of the scripts and used for this project may be cloned or
downloaded from this GitHub repository:
https://github.com/michaeldipperstein/dna.
This was my MSCS thesis project. Please see my thesis project web page for more information on this project.
HomeLast updated on December 29, 2018