a. Understand the goal of Performance Tunning
b. Prepare Performance Tunning Agreement(PTA)
c. Disable unused Services
d. What is the difference between Monitoring a Linux System and Profiling a Linux System
a. Understanding the concepts of measuring units (kilo, mega, giga, tera, peta, exa)
b. Use of sar, iostat, vmstat, top, mpstat etc. to gather and analyze data
c. How to format gathered data using awk
d. Use of gnuplot to graph the data
e. Use RRD tool to gather and display data
a. Understand the basics of Queuing Theory.
b. Usage of modinfo and modprobe to configure kernel module parameters
c. Working with the adaptive tuning daemon named “tuned”. Also working with tuned-adm command and “server profiles”.(tuned, tuned-adm, tuned,conf)
d. Filesystems: Fragmentation and RAID Layouts (e2freefrag, e2fsck, mke2fs, mkfs)
a. Use of pam_limits to restrict users from consuming unlimited resources(blkio, cpu, cpuset,memory,freezer)
b. Usage of cgroups to limit users (cgcreate,cgconfig,cgdelete,cgset, cgclassifyetc.)
a. Collect hardware information from the BIOS, kernel and userspace tools(lscpu,getconf, x86info,dmesg,dmidecode)
b. Use of “sosreport” to collectsystem information (lspci, lsusb, lshal)
c. Gather information of memory organization on NUMA based system. (numactl)
d. Undestand performance characteristics of hard drives and SSD storage.(zcav)
a. How to run process with real time priority (chrt)
b. Dynamically change process priority(nice, renice, killall, time)
c. How to use “strace” to profile software
d. How to use “ltrace” to profile software
e. How to use “valgrind” to profile software
f. How to use “pref” to profile software(perf-list, perf-stat, perf-top,perf-timechart)
a. Use of “systemtap” to profile software(stap, stapex,stapfunc)
b. Extend and existing systemtap script
a. Analyzing mail server workload(Disk, memory, CPU, Network)
b. Select tuned profile for mail server
c. How to compensate for rotational delay (Disk Elevators)
a. Understand basics of memory management(L1 Cache, L2 Cache etc.)
b. Locate memory leaks
c. Tune swap usage
d. Influence memory reclamation
e. Understand NUMA
a. Limit CPU access
b. Manually balance interrupts
c. Pin processes to specific CPU
d. Utilize real time scheduling
a. How to configure an external ext4 journal
b. Configuring journaling modes
c. Select a “tuned” profile for a fileserver workload.
d. Measure network performance
e. Calculate and implement BDP
f. Configure 802.3ad link aggregation and Configure Jumbo frames
a. Select “tuned” profile to support database usage
b. Tune TCP network latancy using sysctl, qperf
c. Examine and tune IPC (Inter Process Communication) Mechanism (pinfo, ipcs, ipcrm, proc)
d. What is Huge Pages and how can it be used to improve memory performance
e. What is the concept of “memory overcommit” and “swappiness” and how they affect the performance of database server.
a. Use of “tuned” to implement power saving strategy
b. Customize tuned profile to specify a specific I/O scheduler
c. Use” powertop” to generate an interactive profile of system’s cpu related power consumption
a. How to “pin” a CPU in virtual environment
b. Configure memory allocation to guest machines
c. How to use cgroups and ksm to fine tune virtual machines
d. Tuning of disk elevator
e. Tuning of block devices to improve performance of virtual machines