References
Completion requirements
It is expected that the student does some self-studying, in order to refresh his/her knowledge of the key components affecting performance.
This represents a minimum of about 3h of personal work.
Here are the respective references describing the notions that are required:
JVM Garbage Collection
Mandatory:
- text (1h): "Java Garbage Collection Basics" by Oracle
http://www.oracle.com/webfolder/technetwork/tutorials/obe/java/gc01/index.html - Get used to http://gceasy.io/
Recommended:
- video (1h): "Understanding Java Garbage Collection and What You Can Do about It" by Gil Tene
https://www.infoq.com/presentations/Understanding-Java-Garbage-Collection (but skip 0:00:00-0:12:56 and 1:22:54-1:31:36)
Optional:
- video (1h): "Visualizing Java Garbage Collection" by Ben Evans
https://www.infoq.com/presentations/Visualizing-Java-GC (but skip 24:05 - 37:53) - video (45'): "Garbage Collection is Good!" by Eva Andreasson
https://www.infoq.com/presentations/garbage-collection-benefits
Processes Lifecycle
Mandatory:
- text (15'): "The Life Cycle of Processes" (The Linux Tutorial)
http://www.linux-tutorial.info/modules.php?name=MContent&pageid=84
Process Scheduler
Mandatory:
- text (15'): "Scheduling" (Elsoc Wiki)
http://elsoc.wikia.com/wiki/Scheduling (except the " Real-time Scheduling Algorithms" section)
Recommended:
- text (30'): "Inside the Linux 2.6 Completely Fair Scheduler" by M. Jones (IBM)
https://www.ibm.com/developerworks/linux/library/l-completely-fair-scheduler/ (also as PDF)
JIT Compiler
Mandatory:
- video (1h): "An introduction to JVM performance" by Rafael Winterhalter
https://www.youtube.com/watch?v=wL3KrSGuZW0
Recommended:
- text (30'): "The Java HotSpot VM. Under the Hood" by Tobias Hartmann (Oracle)
http://people.inf.ethz.ch/zmajo/teaching/cd_ss17/slides/w15_01-hotspot-jvm-jit-compilers.pdf
Optional:
- video (1h): "The Performance Engineer's Guide To Java HotSpot" by Monica Beckwith
https://www.youtube.com/watch?v=6a4Id3lj7Sw
Typical latencies
Mandatory:
- data (15'): "Latency numbers every programmer should know"
https://gist.github.com/hellerbarde/2843375
https://people.eecs.berkeley.edu/~rcs/research/interactive_latency.html (= interactive version with timeline)
Recommended:
- video (2'): "Nanoseconds" by Grace Hopper (US Navy)
https://www.youtube.com/watch?v=JEpsKnWZrJ8
Last modified: Friday, 20 October 2017, 11:30 AM
