トップページへ

2022 Faculty Courses School of Computing Department of Mathematical and Computing Science Graduate major in Mathematical and Computing Science

Topics on Mathematical and Computing Science B

Academic unit or major
Graduate major in Mathematical and Computing Science
Instructor(s)
Kazuaki Ishizaki / Tatsushi Inagaki / Hiroshi Inoue / Kazunori Ogata / Tamiya Onodera / Kiyokuni Kawachiya / Takuya Nakaike / Hiroshi Horii / Michihiro Horie / Tung Le Duc
Class Format
Lecture (Face-to-face)
Media-enhanced courses
-
Day of week/Period
(Classrooms)
5-6 Mon (H116) / 5-6 Thu (H116)
Class
-
Course Code
MCS.T415
Number of credits
200
Course offered
2022
Offered quarter
4Q
Syllabus updated
Jul 10, 2025
Language
Japanese

Syllabus

Course overview and goals

This course covers advanced topics on implementation of programming languages. The topics include runtime systems, dataflow analysis, inlining, deep learning compiler, JVM, LLVM.

This lecture is held on 5 and 6 time slots (13:45-15:25) on every Monday and Thursday, starting on Dec. 8. For the detailed schedule , please check the Japanese version of syllabus. We use lecture room H116.

Course description and aims

By the end of this course, students will understand the state-of-art technologies on implementation of programming languages.

Keywords

programming language, compiler, runtime system, JVM, LLVM

Competencies

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

Class flow

Each class offers a standard type of lecture.

Course schedule/Objectives

Course schedule Objectives
Class 1

Runtime – JVM Overview & Interpreter

Understand the concepts of runtime systems

Class 2

Runtime – Object Management & Synchronization

Understand the concepts of object management & synchronization

Class 3

Runtime – Native Memory Management

Understand the basic techniques of native memory management

Class 4

Compiler – Overview

Understand the overall structure of compilers

Class 5

Compiler – Dataflow Analysis

Understand the theory and practice of dataflow analysis

Class 6

Compiler – Devirtualization & Inlining

Understand the basic techniques of devirtualization & inlining

Class 7

Hot topic – H/W Acceleration (GPGPU, HTM, FPGA)

Understand the advantages and disadvantages of H/W acceleration

Class 8

Hot topic – Open Source Java VM

Understand the current status and techniques of open source JVM

Class 9

Compiler – Trace Compilation & LLVM

Understand the techniques in trace compilation & LLVM

Class 10

Hot topic – Deep Learning Compiler & MLIR (given in English)

Understand the concepts of deep learning compiler & MLIR

Class 11

Hot topic – Compiler in Quantum Computer

Understand the role of compilers in processing quantum applications

Class 12

Concluding Remarks & Outlook

Understand the ongoing issues of compiler technologies

Study advice (preparation and review)

To enhance effective learning, students are encouraged to spend approximately 100 minutes preparing for class and another 100 minutes reviewing class content afterwards (including assignments) for each class.
They should do so by referring to textbooks and other course material.

Textbook(s)

Textbooks will not be used in this course.

Reference books, course materials, etc.

References will be announced in classes.

Evaluation methods and criteria

This lecture is graded by two reports.

Related courses

  • MCS.T334 : Compiler Construction

Prerequisites

Basic knowledge on compilation of programming languages.