ࡱ> []Z (bjbjޤ DTƴƴ vv8\aT('''''''$*,'555''5j'5'V$TK%l8% k''0(%0X-X-K%K%8X-%>|d''+(5555X-v :  San Jose State University CS 259: Advanced Parallel Processing Spring 2015 Course Syllabus Description: An advanced hardware architecture and software development class focused on multi-threaded, parallel processing algorithms and techniques. A detailed study of high-performance parallel processing hardware architectures ranging from on-chip Instruction-Level Parallelism to multi-core microprocessor chips to large distributed supercomputing systems including Clusters, Grids, and Clouds. Discussion and hands-on exercises in a broad range of various parallel programming paradigms and languages such as Pthreads, MPI, OpenMP, Map-Reduce Hadoop, CUDA and OpenCL. The class will focus on the fundamental concepts associated with the design and analysis of parallel processing systems. Special emphasis will be placed on avoiding the unique non-deterministic software defects that can arise in parallel processing systems including race conditions and deadlocks. A term project on a topic selected by the student will be required. Meeting Time: MW 18:00-19:15 MH 222 Prerequisites: CS 159 and CS 247 highly recommended, or instructor consent. Instructor: Robert K. Chun Contact Info: EMAIL: Robert.Chun@sjsu.edu, PHONE: (408) 924-5137, OFFICE: MH 413 Office Hours: MW 16:30 - 17:30 Textbooks: Required: Multi-Core Programming, Shameem Akhter and Jason Roberts, 2006, Intel Press, ISBN 0-9764832-4-6 Required: Using OpenMP, Barbara Chapman, 2008, MIT Press, ISBN 978-0-262-53302-7. Students can access this entire textbook for free via the 91 Library at: http://catalog.sjlibrary.org/record=b4222384 Optional: Scientific Parallel Computing, Ridgway Scott and Terry Clark, 2005, Princeton University Press, ISBN 9780691119359 WebSite: www.sjsu.edu/people/robert.chun Workload Success in this course is based on the expectation that students will spend at least 6 hours per week for working on the homework, team works, and the programming assignments. Grading: Grading consists of two midterms, one final, a written and oral report, and a set of projects (consisting of a combination of written problems and programming assignments) weighted as follows. Grading is based on a class curve. All assignments (especially the oral presentation) must be completed by the student on the due date specified to receive credit for the class. Late assignments or exams are not accepted. All students must uphold academic honesty, especially for the required term paper, per university policy detailed at http://www2.sjsu.edu/senate/f88-10.htm 15% Midterm Exam 1 Week 6 (Approximate) 15% Midterm Exam 2 Week 12 (Approximate) 30% Term Paper/Project & Presentations Weeks 13-15 30% Final Exam Monday, May 18, 2015 17:15-19:30 10% Combined total of Three HW/Projects Due as announced in class Student Learning Outcomes: Upon successful completion of this course, students should be able to understand: The Technical and Business motivation and need for current state-of-the-art computing systems to incorporate Parallel Processing into the Hardware and Software Subsystems. The Micro-Hardware Architectural Evolutionary Trends leading to on-chip Instruction-Level Parallelism, and Pipelining, SuperScalar, Multi-Function Unit Parallel Processing. The Macro-Hardware Architectural Evolutionary Trends leading to Parallel Processing including Flynns Taxonomy and the recent progression in high-performance supercomputing architectures from Clusters to Grids and to Clouds. Data dependency analysis & hazards, and Amdahls Law, which limits the amount of practical speedup and scalability that can be achieved with Parallel Processing. Design and Analysis Techniques for Parallel Processing Systems including the identification of data vs. task partitioning in algorithms and applications. The Different Models for implementing parallelism in Computing Systems such as shared memory and message passing. The software challenges associated with Parallel Processing including the difference between concurrent vs. parallel execution models, deadlocks and race conditions. A sample of current parallel programming paradigms and languages and be able to write parallel programs using them. Schedule (Tentative): LectureTopic 1 - 3 Introduction, Motivation and Overview of Parallel Processing with an emphasis on the Micro- and Macro-Hardware Evolutionary Trends leading to Parallelism and the Software Challenges of Parallelism 4 - 6 Hardware Pipelining and Instruction-Level Parallelism (ILP) 7 - 8 Multi-Function Parallelism in Hardware 9 Data dependency analysis and control hazard analysis including RAW, WAR, WAW, and Branch Prediction 10 Limitations of Hardware-based, Software-transparent ILP 11 - 17 Software Challenges of Parallel Processing including Concurrent vs. Parallel Execution Models, Amdahls Law, Deadlocks, Race Conditions, Semaphores 18 Models of Parallelism such as Shared Memory, Message Passing 19 - 21 Parallel Programming Paradigms including Unix Process Forking, PVM, MPI, OpenMP, CUDA, OpenCL, Hadoop Map-Reduce, GPGPU Computing, Toolsets for Parallel Program Software Development and Debugging. General University Policies DISABILITIES: If you need course adaptations or accommodations because of a disability, or if you need special arrangements in case the building must be evacuated, please inform the instructor as soon as possible. Presidential Directive 97-03 requires that students with disabilities register with DRC to establish a record of their disability. ACADEMIC INTEGRITY: Academic integrity is essential to the mission of San Jos State University. As such, students are expected to perform their own work (except when collaboration is expressly permitted by the course instructor) without the use of any outside resources. Students are not permitted to use old tests or quizzes when preparing for exams, nor may they consult with students who have already taken the exam. When practiced, academic integrity ensures that all students are fairly graded. We all share the obligation to maintain an environment which practices academic integrity. Violations to the Academic Integrity Policy undermine the educational process and will not be tolerated. It also demonstrates a lack of respect for oneself, fellow students and the course instructor, and can ruin the universitys reputation and the value of the degrees it offers. Violators of the Academic Integrity Policy will be subject to failing this course and being reported to the Office of Judicial Affairs for disciplinary action which could result in suspension or expulsion from San Jos State University. CHEATING: At 91, cheating is the act of obtaining or attempting to obtain credit for academic work through the use of any dishonest, deceptive, or fraudulent means. Cheating at 91 includes but is not limited to: Copying in part or in whole, from anothers test or other evaluation instrument; Submitting work previously graded in another course unless this has been approved by the course instructor or by departmental policy. Submitting work simultaneously presented in two courses, unless this has been approved by both course instructors or by departmental policy. Altering or interfering with grading or grading instructions; Sitting for an examination by a surrogate, or as a surrogate; any other act committed by a student in the course of his or her academic work which defrauds or misrepresents, including aiding or abetting in any of the actions defined above. PLAGIARISM: At 91 plagiarism is the act of representing the work of another as ones own (without giving appropriate credit) regardless of how that work was obtained, and submitting it to fulfill academic requirements. Plagiarism at 91 includes but is not limited to: The act of incorporating the ideas, words, sentences, paragraphs, or parts thereof, or the specific substances of anothers work, without giving appropriate credit, and representing the product as ones own work; and representing anothers artistic/scholarly works such as musical compositions, computer programs, photographs, painting, drawing, sculptures, or similar works as ones own. Additional Information: http://www.cs.sjsu.edu/greensheetinfo/index.html     "%.ABM^_`kmy  V  }  ? H S ĻĦġ{s{s{ssokokokokgkgkokho^hlShlhlOJQJhyOJQJho^OJQJhG#OJQJhG#>*OJQJ h5 h{5h5CJaJhhl5CJaJh3#5CJaJhhG#5CJaJhfp5CJaJh%<5CJaJhh)5CJaJhT|hz5CJaJ h)5&B^_`   : > $ 8C%|81$]|^8`a$gd$ 8C%|81$]|^8`a$$ 8D%81$]^8`a$gdEJ$ C%|1$]|^a$ S d      ! " 9 : > K Q T U Y \ ] ` r ¹yqyiiZhPPhEJCJOJQJaJhFDOJQJhOJQJhfpOJQJhEJOJQJhG#OJQJhG#>*OJQJhPPhCJOJQJaJhiOJQJhOJQJh>*OJQJhPPh>*CJOJQJaJhp.hG#CJOJQJaJ hB?{hlhp.OJQJho^OJQJhlh   bcsUUUU$ 8$ C%$ 1$]^$ `a$gdFD$ 8#u81$]u^8`a$gdEJ$ 8#u81$]u^8`a$gd $ 8C%ux1$]ua$gdPP$ 8C%u8d1$]u^8`a$gdz$ 8#u8d1$]u^8`a$gdz       " # % . / E F G m o z ο}qh`XhOJQJhG[LOJQJhz6OJQJhG#CJOJQJaJh)SOJQJhFDOJQJhG#6OJQJhG#OJQJhFD>*OJQJhG#>*OJQJh hEJCJOJQJ^Jh hEJOJQJ^JaJh\ bOJQJ^JaJh)OJQJ^JaJhG#OJQJ^JaJhG#>*OJQJ^JaJ +345abceno   շզզՍ}qbQ hdYchdYcCJ OJQJ^JaJ h h#OJQJ^JaJh#OJQJ^JaJh#h#>*OJQJ^JaJ hdYch#CJ OJQJ^JaJ hPaOJQJhOJQJhG#>*OJQJh>*OJQJhG#6OJQJhG#CJOJQJaJhG#OJQJh5rh5rOJQJhG[LOJQJh_UOJQJh5rOJQJc  uu]]$ 8#81$^8`a$gd{$ 8$ C%|$ 1$]|^$ `a$ dd[$\$gdPP dd@&[$\$gdPP$ 8#u81$]u^8`a$gddYc$ 8#u81$]u^8`a$gd#$ 8$ C%$ 1$]^$ `a$gdFD BDrs *ȿzpf\RHhROJQJ^Jh_UOJQJ^Jhe~UOJQJ^Jh#OJQJ^JhiOJQJ^Jh~OJQJ^J h{h{CJOJQJ^JaJh{CJOJQJ^JaJh OJQJ^Jh{OJQJ^JhG#OJQJhG#>*OJQJhG#CJOJQJaJh hG#OJQJaJh=ChPPOJQJaJ"h=ChPP5CJOJQJ\aJ*BDYrs+,G$  4C%D1$]^`Da$gd{$ C%D1$^`Da$gd{$ 8#81$^8`a$gd{*,EFGH GHIJKjnuyĺĺ~t~t~t~h OJQJaJhkDOJQJaJhi~OJQJaJh?,OJQJaJhOJQJaJhOJQJaJh1OJQJaJh8OJQJaJh8CJOJQJaJh{h8OJQJ^Jh8>*OJQJ\aJh85>*OJQJ\aJh{OJQJ-GHJz,$$1$If^a$gd8$ p =1$]^`=a$gd8^gd{h^hgdkD & FgdkD & Fgd1 & Fgd^gd8yz(=FRYǻ{{{{{{q{bXhIOJQJaJh{h8CJOJQJaJhV "OJQJaJhyOJQJaJhO{OJQJaJh86CJ OJQJaJ h8CJOJQJh85OJQJ^Jh8OJQJ^Jh8OJQJ^JaJh85>*OJQJ\aJhkDhkDOJQJaJhOJQJaJhkDOJQJaJh8OJQJaJ Ikd$$IfP4\#gZ" #>D t644 Pa5f4yt8$$1$If^a$gd8$$1$If^a$gd8$$1$If^a$gd8ZZ}~^_ 0]0^gd~0]0^`gdV "0]0^`gdU\0]0^`gdy 0]0^gd8$ pt 0d1$]0^`a$gd8}~^_ace/0134tuvwyzɿӵӵ쵿ӵ쫓hp.6OJQJhG#OJQJh86OJQJh{h8CJOJQJaJh8OJQJaJhO{OJQJaJh~OJQJaJhV "OJQJaJhIOJQJaJh{hV "CJOJQJaJh{OJQJaJhU\OJQJaJ,_0vxzvf$x]x^a$gd/8$dd[$\$a$gd_;$a$gd0.$dd[$\$a$gd`P$  4C%1$]a$gdp.!$  4C%Dx1$]^`Da$gd80]0^`gd~ 0]0^gd8 0]0^gd~ z®kZF5$!h6h6B*CJOJQJph333!h6h`PB*CJOJQJph333'h6h`P5B*CJOJQJ\ph333!h`P5B*CJOJQJ\ph333+hp.h0.5B*CJOJQJ\aJph333h`PB*CJOJQJph333h_;B*CJOJQJph333!h_;h_;B*CJOJQJph333'h6h_;5B*CJOJQJ\ph333!h_;5B*CJOJQJ\ph333+hp.h_;5B*CJ$OJQJ\aJ$ph333+h`Ph`P5B*CJ$OJQJ\aJ$ph333 P"Q"[")#*#%%%&&T(U(m(((($dd[$\$a$gd0. $^a$gd/8 $^a$gd`P$x]x^a$gd/8$dd[$\$a$gd`P$a$gd0.2I !!c!O"P"Q"Z"(#)#*#%%%%%&&&S(T(U(k(udS!h0.5B*CJOJQJ\ph333!h6h/8B*CJOJQJph333!h`P5B*CJOJQJ\ph333!h6h`PB*CJOJQJph333'h6h65B*CJOJQJ\ph333+hp.h0.5B*CJOJQJ\aJph333h6B*CJOJQJph333!h6hV B*CJOJQJph333!h6h6B*CJOJQJph333hV B*CJOJQJph333k(l(m(((((((((((((((((ɸh7h7CJOJQJaJhbpjhbpU!h0.h6B*CJOJQJph333!h0.h0.B*CJOJQJph333!h0.5B*CJOJQJ\ph333'h6h0.5B*CJOJQJ\ph333((((((((((((($x]x^a$gd/8 PC%<]<^ B0 P&P:px@<0/ =!"T#$% Dp$$If5!vh5>5D55#v>#vD#v#v:V P4 t65>5D55/  / 4 Pa5f4yt8f 666666666vvvvvvvvv666666>6666666666666666666666666666666666666666666666666hH6666666666666666666666666666666666666666666666666666666666666666662 0@P`p2( 0@P`p 0@P`p 0@P`p 0@P`p 0@P`p 0@P`p8XV~OJQJ_HmH nH sH tH <`< NormalCJ_HmH sH tH DA D Default Paragraph FontVi@V  Table Normal :V 44 la (k (No List 4 4 Footer  !44 Header  !X^X 6 Normal (Web)dd[$\$B*CJOJQJph333*W!* 6Strong5\PK![Content_Types].xmlj0Eжr(΢Iw},-j4 wP-t#bΙ{UTU^hd}㨫)*1P' ^W0)T9<l#$yi};~@(Hu* Dנz/0ǰ $ X3aZ,D0j~3߶b~i>3\`?/[G\!-Rk.sԻ..a濭?PK!֧6 _rels/.relsj0 }Q%v/C/}(h"O = C?hv=Ʌ%[xp{۵_Pѣ<1H0ORBdJE4b$q_6LR7`0̞O,En7Lib/SeеPK!kytheme/theme/themeManager.xml M @}w7c(EbˮCAǠҟ7՛K Y, e.|,H,lxɴIsQ}#Ր ֵ+!,^$j=GW)E+& 8PK!Ptheme/theme/theme1.xmlYOo6w toc'vuر-MniP@I}úama[إ4:lЯGRX^6؊>$ !)O^rC$y@/yH*񄴽)޵߻UDb`}"qۋJחX^)I`nEp)liV[]1M<OP6r=zgbIguSebORD۫qu gZo~ٺlAplxpT0+[}`jzAV2Fi@qv֬5\|ʜ̭NleXdsjcs7f W+Ն7`g ȘJj|h(KD- dXiJ؇(x$( :;˹! I_TS 1?E??ZBΪmU/?~xY'y5g&΋/ɋ>GMGeD3Vq%'#q$8K)fw9:ĵ x}rxwr:\TZaG*y8IjbRc|XŻǿI u3KGnD1NIBs RuK>V.EL+M2#'fi ~V vl{u8zH *:(W☕ ~JTe\O*tHGHY}KNP*ݾ˦TѼ9/#A7qZ$*c?qUnwN%Oi4 =3ڗP 1Pm \\9Mؓ2aD];Yt\[x]}Wr|]g- eW )6-rCSj id DЇAΜIqbJ#x꺃 6k#ASh&ʌt(Q%p%m&]caSl=X\P1Mh9MVdDAaVB[݈fJíP|8 քAV^f Hn- "d>znNJ ة>b&2vKyϼD:,AGm\nziÙ.uχYC6OMf3or$5NHT[XF64T,ќM0E)`#5XY`פ;%1U٥m;R>QD DcpU'&LE/pm%]8firS4d 7y\`JnίI R3U~7+׸#m qBiDi*L69mY&iHE=(K&N!V.KeLDĕ{D vEꦚdeNƟe(MN9ߜR6&3(a/DUz<{ˊYȳV)9Z[4^n5!J?Q3eBoCM m<.vpIYfZY_p[=al-Y}Nc͙ŋ4vfavl'SA8|*u{-ߟ0%M07%<ҍPK! ѐ'theme/theme/_rels/themeManager.xml.relsM 0wooӺ&݈Э5 6?$Q ,.aic21h:qm@RN;d`o7gK(M&$R(.1r'JЊT8V"AȻHu}|$b{P8g/]QAsم(#L[PK-![Content_Types].xmlPK-!֧6 +_rels/.relsPK-!kytheme/theme/themeManager.xmlPK-!Ptheme/theme/theme1.xmlPK-! ѐ' theme/theme/_rels/themeManager.xml.relsPK] T S *yzk(( #%'( cG_((!"$&)8@0(  B S  ? $]$]$^$\^$^$^$_$\_$_$_$`$\` 88AG55>D     @FQQ=CNN   9 *urn:schemas-microsoft-com:office:smarttagsplace= *urn:schemas-microsoft-com:office:smarttags PlaceName= *urn:schemas-microsoft-com:office:smarttags PlaceType ^  "%.BHLM^^ny &+,/59QTUY\]rra  , RYZZ]_ae14u "%%BHLM^^&+,/59UUrra       Q/j VXw8)Vtp(,RtE8hhh^h`OJQJo(hH LL^L`hH. ^`hH. ^`hH.   ^ `hH. ^`hH. \\^\`hH. ,,^,`hH. ^`hH.^`CJOJQJo(^`CJOJQJo(pp^p`CJOJQJo(@ @ ^@ `CJOJQJo(^`CJOJQJo(^`CJOJQJo(^`CJOJQJo(^`CJOJQJo(PP^P`CJOJQJo( D ^ `D6o(D^`D6o(-D^`D6o(-..D.^.`D6o(-.. TDT^T`D6o( -... zDz^z`D6o( -....  D ^ `D6o( -..... #D#^#`D6o(-...... &D&^&`D6o(-.......w8)(,RQ/j Q/j          +l8Ots S| V )]B ~B V "3#G#F%?&zA)?,0./8%<1>tBFD%eDkDGEJG[LPP`P6Q.JSlS_Ue~UNiYDoYpZx]^o^Pa\ bdYc7hc$g&5hlbp}q5rrw6cxJ|i~_;Ktpmu)gp.<RO{It{x@*zo8}o\9BT&#9{ 7y6%h$)ST|MU\ofps'B pz rS#i:Sy~1 @ @  X@UnknownG*Ax Times New Roman5Symbol3. *Cx Arial3*Ax Times7. [ @VerdanaAMGenevaArialY New YorkTimes New RomanA$BCambria Math AX('G11f;;%+xx2d b3Q+HX?)2!xx'CS 247: Advanced Computer ArchitectureComputer Science Departmentchun   Oh+'0 $0 P \ h t(CS 247: Advanced Computer ArchitectureComputer Science DepartmentNormalchun5Microsoft Office Word@ @F-&@8[@28՜.+,0( hp  San Jose State University;  (CS 247: Advanced Computer Architecture Title  !"#$%&'()*,-./012456789:;<=>?@ABCDEFGHIKLMNOPQSTUVWXY\Root Entry F&8^Data +1Table3p-WordDocumentDTSummaryInformation(JDocumentSummaryInformation8RCompObjy  F'Microsoft Office Word 97-2003 Document MSWordDocWord.Document.89q