Coder Social home page Coder Social logo

umutazazi / parallelprogramming Goto Github PK

View Code? Open in Web Editor NEW

This project forked from canbula/parallelprogramming

0.0 0.0 0.0 45.24 MB

Repository for Parallel Programming course given by Assoc. Prof. Dr. Bora Canbula at Computer Engineering Department of Manisa Celal Bayar University.

License: MIT License

Python 76.11% Jupyter Notebook 19.87% HTML 0.23% JavaScript 2.57% CSS 0.82% Shell 0.23% Dockerfile 0.18%

parallelprogramming's Introduction

Parallel Programming 2023

Repository for Parallel Programming course given by Assoc. Prof. Dr. Bora Canbula at Computer Engineering Department of Manisa Celal Bayar University.

made-with-python MIT license GitHub stars GitHub forks GitHub contributors GitHub total-pull-requests GitHub pull-requests merged

Course Information

This course is about parallel programming using Python. Students will learn the basic concepts of parallel programming like threads, processes, and distributed systems. They will also learn how to use Locks, Semaphores, and Queues to synchronize threads and processes. Course starts with a brief introduction to Python and then continues with the asynchronous programming using asyncio. In the following sections, students will learn how to create multithread and multiprocess applications. Finally, students will learn how to create distributed applications using cluster computing with containers. You can find some supplementary videos for this course on my YouTube channel.

Wiki

Some concepts are emphasized in Wiki pages, you can find them in the following link.

Wiki Pages

Weekly Content

You can find the codes that written in the laboratory in the folder WeekXX.

Lecture Notes and Problem Sets

In the root folder there is a LectureNotes.pdf file, which is updated weekly after every lecture. At the end of the every chapter, you will also find a Problem Set.

Homeworks

Students are requested to submit their homeworks to folders WeekXX, as defined in the LectureNotes.pdf. The codes will be subject to certain GitHub action workflows to be tested automatically.

Variable Types and Sequences
Week02 Homework

Functions and Decorators
Week03 Homework

Coroutines
Week04 Homework

Monte Carlo Pi Estimator as a Generator
Week06 Homework

Codes and Videos from Previous Years

You can change the branch to see the codes from previous years. Also there is a YouTube playlist, which includes the supplementary videos for the course as given in 2021. The videos do not include the introductory Python and asynchronous programming part, so they start from Week06.

https://www.youtube.com/playlist?list=PL30NBs02RsiUbmXVPDo56APsU0xa6gfL2

parallelprogramming's People

Contributors

canbula avatar mustafaerentugcu avatar batuhan023 avatar einsteinpikachu avatar utkaybattal avatar buraxta avatar kadirkaraduman avatar atreox avatar bsungar avatar berkeyildiz0 avatar atakankarakoc avatar cengizhancam avatar efecan0 avatar dlrakdenizz avatar ataalaca avatar boraozisik avatar timebandit11111 avatar umutazazi avatar umuttrk avatar mehmet-alpergun avatar tugberkozkara avatar thorakna avatar fe-fstar avatar yavuzserdogan avatar rukiyetura avatar fudaylcavus avatar dilaraceydacetin avatar syildizz avatar caturan avatar cembrk avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.