10/07/2018

Linux Performans – Process Binding

Bazen CPU cross call lari azaltmak ve “data locality” yi arttırmak suretiyle performans artımına ihtiyaç duyabiliriz.
Örneğin bir web hosting server da MySQL processinde.
İşte bunun için Process i bir (veya birkaç CPU) ya bağlayabiliriz.
# taskset -pc 7-10 10790
böylece 10790 PID nolu processi sadece işlemciler 7 ve 10 arasında çalışmasını sağlamış olduk.
Ayrıca istersek bir CPU seti oluşturup bu CPU(ların) sadece o process ile çalışmasını ve başka processlerin o CPU(lara) erişmesini engelleyebiliriz.

# mkdir /dev/cpuset
# mount -t cpuset cpuset /dev/cpuset
# cd /dev/cpuset
# mkdir prodset # prodset adinda bir cpuseti oluşturduk.
# cd prodset
# echo 7-10 > cpus
# echo 1 > cpu_exclusive # exclusive yaptik böylece sadece bizim istediğimiz process CPU proset e erişebilecek.
# echo 1159 > tasks # Process ID 1159 u buraya bağladık

Leave a Reply