https://reu.cs.mu.edu/index.php?title=User:Mbeine&feed=atom&action=historyUser:Mbeine - Revision history2024-03-29T08:28:13ZRevision history for this page on the wikiMediaWiki 1.23.13https://reu.cs.mu.edu/index.php?title=User:Mbeine&diff=501&oldid=prevBrylow: 1 revision2015-06-12T06:25:31Z<p>1 revision</p>
<table class='diff diff-contentalign-left'>
<tr style='vertical-align: top;'>
<td colspan='1' style="background-color: white; color:black; text-align: center;">← Older revision</td>
<td colspan='1' style="background-color: white; color:black; text-align: center;">Revision as of 06:25, 12 June 2015</td>
</tr><tr><td colspan='2' style='text-align: center;'><div class="mw-diff-empty">(No difference)</div>
</td></tr></table>Brylowhttps://reu.cs.mu.edu/index.php?title=User:Mbeine&diff=500&oldid=prevMbeine: /* Research Progress */2011-07-29T20:58:06Z<p><span dir="auto"><span class="autocomment">Research Progress</span></span></p>
<p><b>New page</b></p><div>= About Me =<br />
<br />
(As of Summer 2011) I am a student at Marquette University majoring in Computer Science. I have completed two years here at MU, and I plan to graduate at the end of the coming academic year. I am participating in the 2011 MSCS Summer REU program, working with Dr. Rong Ge doing research on GPGPU.<br />
<br />
Project Page: [[Analysis of GPGPU Algorithms for Multiplying Large Matrices]]<br />
<br />
= Research Progress =<br />
At a minimum, progress updates will be posted here every Friday during the program.<br />
<br />
Progress can be checked against the schedule on the wiki page for the project.<br />
== Week 1 ==<br />
=== 5/31 ===<br />
*2011 Summer REU program began<br />
*Introduction stuff and paperwork<br />
=== 6/1 and 6/2 ===<br />
*Took time to become familiar with the [http://www.mscs.mu.edu/~cstruble/slayer/ Slayer]<br />
*Read CUDA tutorials and sample programs<br />
*Practice coding, compiling, and running CUDA programs<br />
=== 6/3 ===<br />
*Read through papers on SUMMA and CUSUMMA. Started with a quick read of each for familiarity, followed by close readings of each.<br />
*Began reading paper on Benchmarking GPUs<br />
== Week 2 ==<br />
=== 6/6 ===<br />
*Reread SUMMA and CUSUMMA papers<br />
*Discussed above papers with Dr. Rong Ge<br />
*Read paper on Benchmarking GPUs and paper on Optimization Principles of a Multithreaded GPU<br />
=== 6/7 ===<br />
*Implemented a program to test the CUBLAS library function for matrix multiplication<br />
*Lots of debugging. There were also issues with linking.<br />
=== 6/8 ===<br />
*Got the linker to work properly<br />
*Worked on timing the execution<br />
=== 6/9 ===<br />
*Finished implementing timing system<br />
*Collected data<br />
*Lunch with other REU students<br />
*Collected more data<br />
=== 6/10 ===<br />
*Began implementing CUSUMMA algorithm. Lots of work on the getPartitionSize function, and began on the actual CUSUMMA implementation.<br />
<br />
== Week 3 ==<br />
=== 6/13 and 6/14 ===<br />
*Programming CUSUMMA<br />
=== 6/15 ===<br />
*Collected run-time data for implementations of CUSUMMA<br />
=== 6/16 ===<br />
*Collected more data on CUSUMMA<br />
*REU Lunch<br />
*Attended required NSF presentation<br />
=== 6/17 ===<br />
*Debugging my implementation of CUSUMMA some more<br />
*Collecting more data with updated code<br />
*Paper discussion with Brylow and his students<br />
<br />
== Week 4 ==<br />
=== 6/20 ===<br />
* Modified CUSUMMA implementation<br />
* Collected data<br />
=== 6/21 ===<br />
* Another modified CUSUMMA implementation<br />
* Collected data<br />
* Read PUMMA paper<br />
=== 6/22 ===<br />
* Collected more data<br />
* Data analysis<br />
* Began working with lmbench<br />
=== 6/23 ===<br />
* Continued trying to figure out lmbench<br />
* REU Lunch<br />
* Paper discussion with Brylow's lab group<br />
=== 6/24 ===<br />
* Continued work with lmbench<br />
* Reread paper on Benchmarking GPUs<br />
* Compared CUSUMMA data with CUBLAS baseline<br />
<br />
== Week 5 ==<br />
=== 6/27 ===<br />
* Started working on lat_mem_rd for GPU<br />
* Began preparing presentation for Thursday<br />
=== 6/28 ===<br />
* Worked on presentation<br />
* Reread PUMMA paper<br />
* Began implementing CUPUMMA<br />
=== 6/29 ===<br />
* Finished simple implementation of CUPUMMA<br />
* Collected data<br />
=== 6/30 ===<br />
* Finalized presentation<br />
* Presentations + lunch<br />
* Worked on improving CUPUMMA<br />
=== 7/1 ===<br />
* Improved CUPUMMA implementation<br />
* Collected data<br />
* Paper discussion with Brylow's lab group<br />
<br />
== Week 6 ==<br />
=== 7/5 ===<br />
* Data collection<br />
* Implemented CUPUMMA with data packing, and collected more data<br />
=== 7/6 ===<br />
* Continued data collection<br />
=== 7/7 and 7/8 ===<br />
* Benchmarking memory transfers between CPU and GPU<br />
* Implemented another CUPUMMA version and collected data<br />
<br />
== Week 7 ==<br />
* Collected more CUPUMMA data - noticed some strange behavior<br />
* Working to understand strange behavior, and found other unexpected behavior in CUSUMMA in the process<br />
* Working to understand that, too<br />
<br />
== Week 8 ==<br />
=== 7/18 ===<br />
* Still trying to figure out issues<br />
* Ultimately figured that CUSUMMA issue was just an issue with precision<br />
* Still no explanation for CUPUMMA behavior<br />
=== 7/19 ===<br />
* Looking for BLAS functions for CPU - found none on the Slayer<br />
* Trying to test CUPUMMA some more<br />
=== 7/20-7/22 ===<br />
* Overlapping communication and computation in CUSUMMA<br />
* Installing ATLAS and using it for a CPU baseline<br />
* Collecting data on each<br />
<br />
== Week 9 ==<br />
* Poster<br />
* More data collection<br />
* Experimenting with partition sizes<br />
* Trying to install MAGMA<br />
* Paper Discussion</div>Mbeine