Linux Performance Tuning (LFS426) Training in Ames

Enroll in or hire us to teach our Linux Performance Tuning (LFS426) class in Ames, Iowa by calling us @303.377.6176. Like all HSG classes, Linux Performance Tuning (LFS426) may be offered either onsite or via instructor led virtual training. Consider looking at our public training schedule to see if it is scheduled: Public Training Classes
Provided there are enough attendees, Linux Performance Tuning (LFS426) may be taught at one of our local training facilities.
We offer private customized training for groups of 3 or more attendees.

Course Description

 
This four-day course takes into account years of cutting edge experience in meeting requirements in some of the most demanding environments. The Linux Foundation developed this four-day course to stand as a reference in the field of performance tuning for Linux.
Course Length: 4 Days
Course Tuition: $2800 (US)

Prerequisites

Students should be experienced Linux users familiar with local system administration concepts. Linux System Administration is required. Fuithermore, we assume that the audience is comfortable with standard command line utilities used for file and process management, file editing, and basic shell scripting. This course also builds upon concepts and tools equivalent to those acquired in LFS230: Linux Network Management.

Course Outline

 
  1. Introduction
    • Linux Foundation
    • Linux Foundation Training
    • Logistics
  2. Performance Optimization Principles
    • Methodology
    • Optimization Process
    • Investigation Tools
  3. Benchmarking
    • Performance Benchmarks
    • Synthetic Benchmarks
    • Application Benchmarks
  4. Tuning Interfaces
    • Kernel Tunables
    • Kernel Parameters
    • Application Interfaces
    • tuned
    • Hardware Tunables
  5. Monitoring Interfaces
    • /proc Filesystem
    • Command-line Utilities
    • Performance Data Collection
    • Nagios
    • Ganglia
    • Kernel Monitoring
  6. Profiling Techniques and Tools
    • Performance Monitoring
    • Counters
    • Performance Ratios
    • Kernel vs Application Profiling
    • oprofile
    • Perf
    • Available perf events
    • Acquiring Performance Data with perf
    • Monitoring Performance from Within the Application
    • User Space Performance Monitoring with gprof
  7. Tracing Tools
    • User Space Tracing
    • strace
    • Library Tracing
    • Kernel Tracing
    • ftrace
    • Systemtap
    • Tracing Applications with SystemTap
  8. CPU Subsystem
    • CPU Concepts and Architecture
    • CPU-Level Optimizations
    • Specialized Instruction Sets
    • CPU Topologies
    • BIOS Settings
  9. Power Management
    • Device Power Management
    • CPU Power Saving States
    • Frequency Scaling
    • Power Management Tools
  10. Process Scheduling
    • Design
    • Scheduling Policies
    • Scheduling Tunable Settings
    • CPU Affinity and Isolation
    • Interrupt Affinity
  11. Memory Subsystem
    • Overview
    • Page Lookup Optimization and Huge Pages
    • Controlling Swapping from Applications
    • Minimizing Faults
  12. NUMA Optimizations
    • Key NUMA Concepts
    • CPU Concepts and Architecture
    • NUMA Memory Allocation
    • NUMA Statistics
  13. I/O Subsystem
    • Storage Stack Overview
    • I/O Scheduler Concepts
    • I/O Scheduler Algorithms
    • Hardware Considerations
    • Tuning Storage Devices
  14. Local Filesystems
    • Choosing the Right Filesystem
    • Ext3/4 Journaling Modes
    • Filesystem Attributes
  15. Network Filesystems
    • Network File System (NFS)
    • NFSv4
    • pNFS
  16. Storage and IO
    • Software RAID Refresher
    • RAID Levels
    • RAID configuration
    • Logical volumes
    • Volumes and Volume Groups
    • Creating Logical Volumes
    • Raw Devices
    • Asynchronous I/O
  17. Analyzing the I/O Subsystem
    • iostats
    • iotop
    • blktrace
    • blkparse
    • btrace
    • btt
    • blkiomon
  18. Network Subsystem Optimization
    • Network Stack Overview
    • Optimizing for Latency and Throughput
    • Network Interface Hardware Settings
    • Offloading Techniques
    • TCP Optimization
    • Monitoring and Diagnostic Tools
  19. Virtualization
    • Virtualization Overview
    • Disk Considerations
    • Network Consideratons
  20. Conclusion

Course Directory [training on all levels]

Upcoming Classes
Gain insight and ideas from students with different perspectives and experiences.

Linux Unix Uses & Stats

Linux Unix is Used For:
Desktop Mainframe Computers Mobile Devices Embedded Devices
Difficulty
Popularity
Year Created
1991/1971
Pros
Performance:
Linux supports many efficient tools and operates them seamlessly. Because it's architecture is lightweight it runs faster than both Windows 8.1 and 10. 
 
Security:
Because Linux is an open-source software,  anyone can contribute code to help enhance the users’ experience i.e., adding features, fixing bugs, reducing security risks, and more.
 
 
Software Development:
The terminal in Linux is a *wild card*. You can do almost anything with it. This includes software installation, application and server configurations, file system management, and etc.
 
Large-scale:
Open-source projects benefit from having an attentive community. As a result, Linux is more secure than Windows. Instead of installing anti viruses to clean malware, you just have to stick to the recommended repositories. 
 
Efficient: 
Developers have the convenience of running servers, training machine learning models, accessing remote machines, and compiling and running scripts from the same terminal window. 
 
Free: 
Linux is free (you can put it on as many systems as you like) and you can change it to suit your needs.
Cons
Learning Curve: 
Linux is not for everyone, there is a learning curve in switching to Ubuntu. To actually learn Linux efficiently would take a user one to several years.
 
No Tech Support:
Unlike Windows, there isn’t a dedicated tech support, so getting help for things is up to you. 
 
Designer Compatabilty:
Linux is not as user friendly as Windows or as ‘straight out of the box design’ As an example for design choices, Adobe hasn’t released any of its products to Linux users. So it’s impossible to run them directly. The Ubuntu alternative is a free software called GIMP. 
 
Gaming Capabilities: 
Most games aren’t available in Linux. But that’s not to say you can’t make it happen, it's just not as easy.   
Linux Unix Job Market
Average Salary
$85k-$105k
Job Count
n/a
Top Job Locations

New York City
Boston
San Francisco 

Complimentary Skills to have along with Linux Unix
The following are types of jobs that may require Linux skills.  The top 15 job titles on Dice.com that mention Linux in their postings are:
- DevOps Engineer
- Software Engineer
- Java Developer
- Systems Engineer
- Systems Administrator
- Senior Software Engineer
- Network Engineer
- Python Developer
- Linux Systems Administrator
- Software Developer
- System Administrator
- Linux Administrator
- Linux Engineer
- Senior Java Developer
- C++ Developer

Interesting Reads Take a class with us and receive a book of your choosing for 50% off MSRP.