Distributed SystemsSistem Terdistribusi
Distributed systems course at STMIK Tazkia in two parts: distributed systems (networking, HTTP/TLS, modern inter-service communication with RPC/REST/gRPC/GraphQL, microservices and messaging, concurrency, replication, consistency and Kubernetes) and high performance computing (OpenMP, MPI, GPU/CUDA, high-level parallel patterns with tasks and distributed actors, distributed AI training).Mata kuliah Sistem Terdistribusi STMIK Tazkia dengan dua capaian: sistem terdistribusi (jaringan, HTTP/TLS, komunikasi antar layanan modern dengan RPC/REST/gRPC/GraphQL, microservices dan messaging, concurrency, replikasi, konsistensi, dan Kubernetes) serta high performance computing (OpenMP, MPI, GPU/CUDA, pola paralel tingkat tinggi dengan task dan actor terdistribusi, dan pelatihan AI terdistribusi).
Distributed Systems 101Sistem Terdistribusi 101
Opening meeting: you learn what a distributed system is, why it is needed, what it costs, and the map of this course's two parts (Distributed Systems and High Performance Computing).Pertemuan pembuka: Anda memahami apa itu sistem terdistribusi, mengapa dibutuhkan, apa ongkosnya, serta peta dua bagian mata kuliah ini (Sistem Terdistribusi dan High Performance Computing).
- 📄 Slide Pertemuan 1 v13112026
Networking: IP, sockets, TCP, UDP, QUICJaringan: IP, socket, TCP, UDP, QUIC
You learn how two programs exchange data over a network (IP, ports, DNS, sockets) and distinguish TCP, UDP, and QUIC.Anda mempelajari cara dua program bertukar data lewat jaringan (IP, port, DNS, socket) dan membedakan TCP, UDP, dan QUIC.
- 📄 Slide Pertemuan 2 v07112026
HTTP/1.1, HTTP/2, HTTP/3, TLS and HTTPSHTTP/1.1, HTTP/2, HTTP/3, TLS dan HTTPS
You study the evolution of HTTP/1.1, HTTP/2, and HTTP/3 and the role of TLS and certificates in HTTPS.Anda mempelajari evolusi HTTP/1.1, HTTP/2, dan HTTP/3 serta peran TLS dan sertifikat pada HTTPS.
- 📄 Slide Pertemuan 3 v07112026
Modern inter-service communication: RPC, REST, gRPC, GraphQLKomunikasi antar layanan modern: RPC, REST, gRPC, GraphQL
You choose and build the right way for services to communicate (from classic RPC to gRPC and REST) and back the choice with measurements.Anda memilih dan membangun cara komunikasi antar layanan yang tepat (dari RPC klasik hingga gRPC dan REST) dan membuktikan pilihan itu dengan pengukuran.
- 📄 Slide Pertemuan 4 v13112026
Architecture: n-tier, microservices, and messagingArsitektur: n-tier, microservices, dan messaging
You design application architectures from 1-tier to microservices, including asynchronous communication through messaging, with the reasons and costs of each choice.Anda merancang arsitektur aplikasi dari 1-tier sampai microservices, termasuk komunikasi asynchronous lewat messaging, beserta alasan dan ongkos tiap pilihan.
- 📄 Slide Pertemuan 5 v13112026
Concurrency: threads, goroutines, actors, reactiveConcurrency: thread, goroutine, actor, reactive
You write concurrent programs using several models (threads and locks, goroutines and channels, actors, reactive) and explain the risks of each, such as race conditions and deadlocks.Anda menulis program concurrent dengan beberapa model (thread dan lock, goroutine dan channel, actor, reactive) dan menjelaskan risiko masing-masing seperti race condition dan deadlock.
- 📄 Slide Pertemuan 6 v07112026
Replication, consistency, consensus, and KubernetesReplikasi, konsistensi, consensus, dan Kubernetes
You apply replication, consistency models, and consensus (Raft), and build self-healing services with Kubernetes.Anda menerapkan replikasi, model konsistensi, dan consensus (Raft), serta membuat layanan yang memulihkan diri dengan Kubernetes.
- 📄 Slide Pertemuan 7 v07112026
Midterm - group project: one system, three ways to talkUTS - tugas besar: satu sistem, tiga cara bicara
Midterm exam as a major project, "One system, three ways to talk": a system of at least three services communicating via REST, gRPC, and an asynchronous channel, running with replicas, measured for latency and throughput, and tested for failure.Ujian Tengah Semester berupa tugas besar "Satu sistem, tiga cara bicara": sistem minimal tiga layanan yang berkomunikasi lewat REST, gRPC, dan jalur asynchronous, berjalan dengan replika, diukur latency dan throughput-nya, serta diuji ketahanannya.
- 📄 Brief Tugas Besar UTS v07112026
Introduction to high performance computingPengantar high performance computing
Introduction to High Performance Computing: you measure and interpret parallel performance with the right metrics (speedup, efficiency, scaling, Amdahl's and Gustafson's laws).Pengantar High Performance Computing: Anda mengukur dan menafsirkan performa komputasi paralel dengan metrik yang benar (speedup, efisiensi, scaling, hukum Amdahl dan Gustafson).
- 📄 Slide Pertemuan 9 v13112026
CPU, memory, and OpenMPCPU, memori, dan OpenMP
You learn why a program runs fast or slow on a CPU (memory, caches) and parallelize it with OpenMP.Anda memahami mengapa sebuah program cepat atau lambat di CPU (memori, cache) dan memparalelkannya dengan OpenMP.
- 📄 Slide Pertemuan 10 v13112026
HPC clusters and MPIKlaster HPC dan MPI
You run parallel programs on an HPC cluster with MPI and understand the role of fast interconnects such as InfiniBand and RDMA.Anda menjalankan program paralel di klaster HPC dengan MPI dan memahami peran interkoneksi cepat seperti InfiniBand dan RDMA.
- 📄 Slide Pertemuan 11 v07112026
GPU and CUDA basicsGPU dan CUDA dasar
You study GPU architecture (streaming multiprocessors, warps, the memory hierarchy) and write simple CUDA kernels.Anda mempelajari arsitektur GPU (streaming multiprocessor, warp, hierarki memori) dan menulis kernel CUDA sederhana.
- 📄 Slide Pertemuan 12 v07112026
GPU optimisation and heterogeneous computingOptimasi GPU dan heterogeneous computing
You apply basic GPU optimizations (memory coalescing, shared memory, occupancy) and survey the accelerators of heterogeneous computing such as Tensor Cores, TPUs, and FPGAs.Anda menerapkan optimasi dasar GPU (memory coalescing, shared memory, occupancy) dan mengenal ragam akselerator dalam heterogeneous computing seperti Tensor Core, TPU, dan FPGA.
- 📄 Slide Pertemuan 13 v13112026
High-level parallel patterns: tasks and distributed actorsPola paralel tingkat tinggi: task dan actor terdistribusi
You apply high-level parallel patterns with distributed tasks and actors (Dask, Ray) and understand parallel I/O and checkpointing on clusters.Anda menerapkan pola paralel tingkat tinggi dengan task dan actor terdistribusi (Dask, Ray) serta memahami I/O paralel dan checkpoint pada klaster.
- 📄 Slide Pertemuan 14 v07112026
AI clusters and distributed trainingKlaster AI dan distributed training
You study distributed AI model training as the meeting point of distributed systems and HPC, and weigh performance, reliability, cost, and energy.Anda mempelajari pelatihan model AI terdistribusi sebagai titik temu sistem terdistribusi dan HPC, serta menimbang performa, keandalan, biaya, dan energi.
- 📄 Slide Pertemuan 15 v13112026
Final - group project: one problem, more and more processorsUAS - tugas besar: satu soal, makin banyak prosesor
Final exam as a major project, "One problem, ever more processors": one heavy computation is implemented step by step from serial to multicore, multi-node, and GPU, then measured for speedup and scaling with an explanation.Ujian Akhir Semester berupa tugas besar "Satu soal, makin banyak prosesor": satu komputasi berat dikerjakan bertahap dari serial, multicore, banyak node, sampai GPU, lalu diukur speedup dan scaling-nya beserta penjelasannya.
- 📄 Brief Tugas Besar UAS v13112026