Τρίτη 31 Μαρτίου 2009

Διαλέξεις Καθηγητή Snyder για την Παραλληλία

ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ


ΠΡΟΓΡΑΜΜΑ ΔΙΑΛΕΞΕΩΝ ΕΠΙΣΚΕΠΤΗ ΚΑΘΗΓΗΤΗ ΣΥΝΤΟΜΗΣ ΔΙΑΡΚΕΙΑΣ

professor Lawrence SNYDER

Department of Computer Science-Engineering

University of Washington, USA

Overview

Parallel computation is a practical necessity today, but most computer scientists have never programmed parallel computers. Because parallel programming is not like standard (sequential) programming, there is a software crisis looming. Software companies want to hire knowledgeable parallel programmers, but only a handful graduate each year with this experience. In this series of talks the goal will be to present the current state of the art in parallel programming, and to explain how students and faculty can become effective parallel programmers. Emphasis will be placed on explaining what works, and what doesn’t work, so that the content will have immediate applicability.


Colloquium: The New Opportunities and Challenges of Parallelism

The fastest computer in the world has achieved a speed of 10^15 floating point operations per second; all desktop and laptop computers sold today are parallel computers. What programming techniques can be used to effectively translate the potential parallelism in a computation to these kinds of computers? Will one language work for both situations? Should all programmers be parallel programmers? The lecture discusses answers to these questions as well as other urgent problems in parallel computation.

Location: Room 148, Building 12 Faculty of Pure and Applied Sciences, New Campus 

Date: Wednesday, April 8th, 2009
Time: 15:00 - 16:00


Lecture 1

35 Years of Research: Positive Results; Negative Results

Parallel programming has been an intensively studied topic since the development of Illiac 4. But after 35 what has been learned? Researchers new to the subject think nothing from the past applies; those who have worked in the area for a long time, believe much is known. What positive results do we have -- what works? What negative results do we have -- what doesn't work? What survives to build on? How should the past inform our research agenda?

A Model of Parallelism To Guide Thinking

Sequential programming is different from parallel programming. In the lecture, I discuss some of the ways. Some issues include: What can we take from sequential programming and apply to the parallel programming problem? What goals should any new language have? What is to be done with the millions of lines of legacy code that must continue to run -- can it run in parallel. How can parallel architecture research help? A new model of parallel computation suitable for programming language design will be introduced.

Location: Room 148, Building 12 Faculty of Pure and Applied Sciences, New Campus 

Date: Thursday, April 9th, 2009
Time: 15:00-17:00


Lecture 2

Parallel Languages of Today -- OpenMP to Fortress

Parallel programming language research continues to be an active topic. New languages are being implemented all of the time. We briefly touch on the languages presently in use: MPI, PVM, OpenMP. We consider the advancement provided by the Partitioned Global Address Space (PGAS) languages: Co-Array Fortran, UPC, Titanium. Further we consider the advancements of the new HPC languages: Chapel, X10 and Fortress. Special purpose languages like Cuda will also be touched on. What kind of language do the developers of desktop applications need?

Next Parallel Languages -- Access To Parallelism For All

With the benefit of the preceding lectures, we consider the future directions of parallel programming. How must the languages adapt? How must our teaching of programming and computer science adapt to the future programming world. How does a 20-year veteran programmer become proficient in parallel programming, or is that necessary? Where should research be directed to answer these questions?

Location: Room 148, Building 12 Faculty of Pure and Applied Sciences, New Campus 

Date: Friday, April 10, 2009
Time: 16:30-18:30

For inquiries and more information please contact: M. Dikaiakos, CS Dept (mdd@cs.ucy.ac.cy) and check the Web site: http://www.cs.ucy.ac.cy/colloquium/



Lawrence Snyder is a professor of Computer Science and Engineering at the University of Washington in Seattle. He received a BA from the University of Iowa in Mathematics and Economics, and his PhD from Carnegie Mellon University as a student of A. Nico Habermann. He has served on the faculties of Yale and Purdue, and has had visiting appointments at UW, Harvard, MIT, Sydney University, The Swiss Technological University (ETH), The University of Auckland and Kyoto University.


Throughout most of his career Snyder's research has focused on parallel computation, including architecture, algorithms and languages. In 1980 he invented programmable interconnect, a method to dynamically configure on-chip components, and a technology used today for FPGAs. In 1990 he was co-designer of Chaos Router, a randomizing adaptive packet router. He was principle investigator of the ZPL language design project, the first high-level parallel language to achieve "performance portability" across all parallel computer platforms.


Snyder is author of Fluency with Information Technology: Skills, Concepts and Capabilities, a textbook for non-techie college freshmen that teaches fundamental computing concepts; the book is in its 3rd edition. With former PhD student Calvin Lin (UT Austin), he has written Principles of Parallel Programming, published in 2008. 


In service, Snyder was a three-term member of the Computer Research Association Board of Directors, developing a series of best practices white papers. He chaired the NSF CISE Advisory Board as well as several CISE directorate oversight panels and numerous review panels. He has chaired two National Research Council studies, producing influential reports -- Academic Careers for Experimental Computer Scientists and Engineers and Being Fluent with Information Technology; he served three terms on NRC's Army Research Lab Technical Advisory Board. He serves on ACM's Education Board, has been general chair or program committee chair of several ACM and IEEE conferences. He is a fellow of both the ACM and IEEE.


His most important and rewarding accomplishment has been as adviser to 21 doctoral

students.

Παρασκευή 27 Μαρτίου 2009

Καλοκαιρινές Θέσεις Βοηθῶν Ἒρευνας

Τό Ἐργαστήριο Ὑπολογιστικῶν Συστημάτων Ὑψηλῆς Ἐπίδοσης (High-Performance Computing Systems Lab) ἀνακοινώνει δύο θέσεις βοηθῶν ἒρευνας γιά τήν θερινή περίοδο τοῦ 2009 (Ἰούνιος, Ἰούλιος). Οἱ θέσεις ἀφοροῦν σέ προγραμματισμό JAVA πάνω σέ εὐφυή κινητά τηλέφωνα OpenMoko μέ στόχο τή δημιουργία μιᾶς ἐφαρμογῆς κοινωνικῆς δικτύωσης μέσω κινητῶν τηλεφώνων. Οἱ φοιτητές τοῦ ΕΠΛ233 πού ἐπιθυμοῦν νά ὑποβάλλουν αἲτηση, μποροῦν νά μοῦ στείλουν email μέχρι τήν τελευταία ἑβδομάδα τῶν μαθημάτων.

Διαφάνειες

Οἱ διαφάνεις τῶν τελευταίων διαλέξεων ἒχουν δημοσιευθεῖ μέσω τοῦ WebCT.

Πέμπτη 26 Μαρτίου 2009

How are Java software developers using the Elipse IDE?

Ἐνδιαφέρον ἂρθρο, δημοσιευμένο στό περιοδικό IEEE Software τό 2006 ἀπό τούς Murphy, Kersten καί Findlater. Μπορεῖτε νά τό βρεῖτε μέσω τῆς ψηφιακῆς βιβλιοθήκης IEEE Xplore σέ μορφή pdf, ἐφόσον συνδεθεῖτε ἀπό τό ἐνδοδίκτυο τοῦ Π.Κ.