2017 Topics on Mathematical and Computing Science C

Font size  SML

Register update notification mail Add to favorite lecture list
Academic unit or major
Graduate major in Mathematical and Computing Science
Instructor(s)
            Takeuchi Mikio    Horie Michihiro  Horii Hiroshi 
Class Format
Lecture     
Media-enhanced courses
Day/Period(Room No.)
Intensive ()  
Group
-
Course number
MCS.T512
Credits
2
Academic year
2017
Offered quarter
3-4Q
Syllabus updated
2017/10/3
Lecture notes updated
-
Language used
Japanese
Access Index

Course description and aims

There has been significant progress in implementation techniques, dynamic compilation in particular, of programming languages for the last two decades. In particular, many implementations including Java achieve as efficient --- sometimes more efficient --- runtime performance as statically compiled implementations. The technologies behind the progress is essential not only for the research in programming language implementations, but also for using those programming languages. The lecture systematically explains the techniques in runtime systems, compilers and advanced topics in those programming languages.

Student learning outcomes

The students will understand the state-of-the-art techniques of programming language implementations. They will also understand the important topics therein.

Keywords

Programming language implementations
Dynamic compilation
the Java language
Just-in-Time compilers

Competencies that will be developed

Specialist skills Intercultural skills Communication skills Critical thinking skills Practical and/or problem-solving skills

Class flow

Each lecturer will explain for each topic.

Course schedule/Required learning

  Course schedule Required learning
Class 1 Runtime --- JVM Overview & Interpreter .
Class 2 Runtime --- Object Management & Synchronization .
Class 3 Runtime --- Native memory management .
Class 4 Compiler --- Overview .
Class 5 Compiler --- Dataflow Analysis .
Class 6 Compiler --- Devirtualization & Inlining .
Class 7 Compiler --- Trace Compilation & LLVM
Class 8 Hot topic --- Open Source Java VM .
Class 9 Hot topic --- Full stack optimization .
Class 10 Hot topic --- X10 .
Class 11 Hot topic --- H/W acceleration (GPGPU, HTM, FPGA) .
Class 12 Summary and beyond .

Textbook(s)

N/A

Reference books, course materials, etc.

The course materials are provided online.

Assessment criteria and methods

The students are requested to the end-of-term assignment, which answers to some of the tasks selected from the ones given at the end of each round.

Related courses

  • MCS.T503 : Programming Language Design
  • MCS.T502 : Functional Programming

Prerequisites (i.e., required knowledge, skills, courses, etc.)

The students are better to have basic knowledge on programming and programming language implementations (esp. compilers).

Contact information (e-mail and phone)    Notice : Please replace from "[at]" to "@"(half-width character).

Hidehiko Masuhara (masuhara[at]is.titech.ac, followed by the domain name of Japan; ext. 3228)

Page Top