Workshops and Talks
- Docent talk, Generalized Reinforcement Learning for Gameplay, KTH Royal Institute of Technology, Stockholm, Sweden, October 2021 [slides]
- Talk, Distributed Deep Learning, AAISS, Amirkabir Artificial Intelligence Summer Summit, Amirkabir University of Technology (AUT), Tehran, Iran, August 2020 [slides]
- Keynote talk, Data intensive computing platforms, ICCKE, The International Conference on Computer and Knowledge Engineering, Ferdowsi University of Mashhad, Mashhad, Iran (2018)
- Keynote talk, Stratosphere, EIT ICT Labs and Cloudberry Science and Innovation Days, Lulea University of Technology, Lulea, Sweden (2014) [slides]
- Worskhop, Introduction to deep learning, Yazd University, Yazd, Iran, December 2018
- Workshop, Deep learning for poets, Amirkabir University of Technology (AUT), Tehran, Iran, December 2018 [slides1] [slides2] [slides3] [slides4] [videos]
- Distance talk, Processing massive graphs, AUT big data workshop, Amirkabir University of Technology (AUT), Tehran, Iran, April 2017 [slides]
- Workshop, Data intensive computing, Sharif ICT Innovation Center, Iran, August 2016 [slides] [videos]
- Workshpo, Introduction to Spark, EIT Digital Summer School on Cloud Computing and Big Data, Sweden, June-July, 2016 [slides1] [slides2] [slides3] [slides4] [ipython notebooks]
- Workshop, Data intensive computing, SeRC, Sweden, February 2016 [slides] [zeppelin notebooks]
- Distance talk, Data intensive computing, Linux festival, Amirkabir University of Technology (AUT), Tehran, Iran, May 2015 [slides]
- Talk, Cloud computing, Amirkabir University of Technology (AUT), Iran, April 2015 [slides]
- Workshop, Data intensive computing, eFarda, Iran, January 2015 [slides]
- Workshop, Introduction to Spark, Cafe Bazzar, Iran, January 2015 [slides]
- Workshop, Introduction to Spark, SICS Swedish ICT, Sweden, June 2014 [slides]
- Talk, P2P content distribution (BiTtorent and Spotify), Amirkabir University of Technology (AUT), Tehran, Iran, November 2014 [slides]
Other Courses and Slides
Distributed Systems (2015)
Distributed Computing, Peer-to-Peer and GRIDS (2008 - 2012)
- NoSQL Databases (2012) [pdf]
- Epidemic Algorithms (2012) [pdf]
- P2P Media Streaming (2012) [pdf]
- P2P Media Streaming (2011) [pdf]
- P2P Media Streaming (2010) [pdf]
- Chord (2010-2011) [pdf]
- Kademlia (2010-2011) [pdf]
- P2P Introduction (2010) [pdf]
- Pastry (2009) [pdf]
- Content Distribution Network (2008) [pdf]
Video Lectures on GNU/Linux (2006)
- Linux Startup (in Farsi) [mp4]
- Linux Kernel Architecture (in Farsi) [mp4]
- Linux Module Programming (in Farsi) [mp4]
- Linux Processes and IPC (in Farsi) [mp4]
- Linux Socket Programming (in Farsi) [mp4]
- Intrusion Detection Systems (in Farsi) [mp4]
Linux Device Driver (2004)
- Linux Kernel Architecture [pdf]
- Linux Module Programming [pdf]
- Debugging Techniques [pdf]
- Char. Drivers [pdf]
- Advanced Char. Drivers [pdf]
- Allocating Memory [pdf]
- Communicating with Hardware [pdf]
- Interrupt Handling [pdf]
- Kmod and Advanced Modularization [pdf]
- PCI Drivers [pdf]
- Block Drivers [pdf]
- Network Drivers [pdf]
GNU/Linux OS Lab. (2001)
- Linux Kernel Architecture [pdf]
- Linux Filesystem [pdf]
- Linux Installation [pdf]
- Linux Startup [pdf]
- Linux Processes and IPC [pdf]
- Linux Socket Programming [pdf]
- Linux Module Programming [pdf]
Slides
- X-Stream: Edge-centric Graph Processing using Streaming Partitions (2014) [pdf]
- Cloudy Weather for P2P, with a Chance of Gossip (2011) [pdf]
- Cloud Streaming (2011) [pdf]
- GLive: The Gradient overlay as a market maker for mesh-based P2P live streaming (2011) [pdf]
- Gozar: NAT-friendly Peer Sampling with One-Hop Distributed NAT Traversal (2011) [pdf]
- Sepidar: Incentivized Market-Based P2P Live-Streaming on the Gradient Overlay (2011) [pdf]
- gradienTv: Market-based P2P Live Media Streaming on the Gradient Overlay (2010) [pdf]
- P2P'10 At A Glance (2010) [pdf]
- Gossip Peer Sampling In The Real World (2010) [pdf]
- P2P Combinatorial Optimization (2009) [pdf]
- Hierarchical Codes: How to Make Erasure Codes Attractive for Peer-to-Peer Storage Systems (2008) [pdf]
- CliqueStream: An Efficient and Fault-resilient Live Streaming Network on a Clustered Peer-to-peer Overlay (2008) [pdf]
- P2P Live Streaming (2007) [pdf]
- A Survey on P2P Live Streaming (2007) [pdf]
- Implementation of User Level SLA for GLite using Tycoon (2007) [pdf]
- How to Remaster Fedore Core (2006) [pdf]
- Embedded Linux (2006) [pdf]
- Linux Overview (2006) [pdf]
- Linux Introduction (2006 - in Farsi) [pdf]
- Intrusion Detection System (2003) [pdf]
Some Useful Documents
- Implementation of User Level SLA for GLite using Tycoon (2007) [pdf]
- How to Build a Live CD (2006 - in Farsi) [pdf]
- How to Build Linux From Scratch - Version 6.0 (2006 - in Farsi) [pdf]
- How to Remaster Karamad Linux (2006 - in Farsi) [pdf]
- Embedded OS Benchmarking (2005) [pdf]