Rashawn L. Knapp

Education

I received my Master's degree in Computer Science from PSU in 2006.  My thesis is titled "Towards Environment-Aware Performance Analysis: Improving Parallel Performance Diagnosis by Including Knowledge of the Runtime Environment"

I received a Bachelor of Arts degree in International Studies from Oregon State University in conjunction with a Bachelor of Science degree in Health Care Administration.  My undergraduate thesis is titled "A Situational Analysis of a Clinic-Based Family-Planning Program in Mexico", and my thesis advisor was Dr. Chunhuei Chi.

Experience

Teaching Assistant, Sep. 2009 - Present; Sep. - Dec. 2008; Mar. - Jun. 2008, Sep.-Dec. 2007; Jan.-Jun. 2007; Sep. 2005 - Mar. 2006.
Computer Science Department, Portland State University, Portland, Oregon.
Assist professors with course duties, including grading, tutoring, presenting lectures, and development of supplemental course materials. Courses include Operating Systems, Internetworking Protocols, Languages and Compiler Design, Algorithms, Programming Systems, Introduction to Computer Science, and Computing Fundamentals.

Graduate Intern Software Engineer, Jun. 2009 - Sep. 2009.
Intel Corportaion, Hillsboro, Oregon.
Designed and implemented lightweight, modularized software that interfaces with MPI and non MPI applications to measure hardware performance events on Intel processors: Added a new sampling mode to an existing hardware event collection tool to measure events upon request at the application level via static calls to the collection API. Implementation involved working with a production-level hardware event collection tool of 30K+ lines of code; adding new features at the Linux device driver level, the internal user-level, and the user API level; developed additional module for accessing the hardware event collection system from a variety of application paradigms; extended an MPI wrapper library prototype to collect hardware events via the new collection interface.

Research Assistant, Jan. 2009 - Jun. 2009; Jun. - Sep. 2008, Sep.-Dec. 2006; Apr.-Jun. 2006; Jun.-Sep. 2005.
Prof. Karen L. Karavanic, Computer Science Department, Portland State University, Portland, Oregon.
Various projects related to the design and development of PerfTrack, a tool for storage and analysis of parallel performance data. Recent work involves extending PerfTrack for use in dissertation research and production installations of PerfTrack. Earlier work involved collaborations between the High Performance Computing Laboratory and Lawrence Livermore National Laboratory in the design and development of PerfTrack.

Instructor, Jan. - Mar. 2008.
Computer Science Department, Portland State University, Portland, Oregon.
Taught introductory course in Visual Basic programming to non computer science majors.

Co-op Pre-Professional Programmer, June 2007 - September 2007.
IBM, Research Triangle Park, North Carolina. Primary developer on ARUM, an Application Resource Usage Monitor for multi-core and multi-processor AMD and Intel systems running the Linux operating system: the resulting implementation is a lightweight, easy-to-use user level tool, written in C++, that operates on unmodified binaries, requires no kernel modifications or special user privileges to support access to hardware counters, and measures both system level and application level metrics. Developed Linux device driver that provides user level access to hardware performance counters, implemented cpuid function to identify architecture, designed a mapping between architecture and supported events for four different architectures, developed user level API and user-level internal software.

Technical Scholar, June 2006 - September 2006.
Computing Applications and Research Department, Lawrence Livermore National Laboratory, Livermore, California.
Investigated analysis methods appropriate for large-scale application performance data; conducted several performance studies to gain understanding of how to incorporate automated analysis techniques into PerfTrack.

Full CV available upon request.