วันศุกร์ที่ 10 กรกฎาคม พ.ศ. 2558

Hybrid Thin Client #04 (เทคนิคการกำหนดจำนวน CPU Core สำหรับใช้งานในโปรแกรมแต่ละตัว)

5. เทคนิคการกำหนดจำนวน CPU Core สำหรับใช้งานในโปรแกรมแต่ละตัว
เริ่มแรกที่เปลี่ยนมาใช้ Terminal Server เมื่อให้ User เข้ามาใช้งานโปรแกรมต่างๆ บนเครื่อง Server พร้อมกันหลายๆ คน บางครั้งโปรแกรมบางตัวใช้ CPU สูงมาก เช่น Excel ที่มีสูตรเยอะๆ คือเวลาทำงานจะกิน CPU 100% เต็มในช่างเวลาสั้นๆ แต่มันทำให้ระบบโดยรวมช้าลงครับ

จากการลองผิดลองถูก ก็ได้เทคนิคง่ายๆ ที่จะกำหนดจำนวน CPU Core สำหรับโปรแกรมแต่ละตัว โดยจะลดจำนวน Core ที่อนุญาตให้โปรแกรมใช้ได้น้อยลง เหลือ 1 Core จากทั้งหมด 2 Core เพื่อที่เวลาโปรแกรมทำงานกิน CPU 100% จะได้ยังเหลืออีก 1 Core ที่จะแบ่งไปทำงานอย่างอื่นให้ User อื่นต่อไป

เอาล่ะครับ จากภาพผมทดลองเปิดโปรแกรม wordpad ขึ้นมาปกติเลย ใน Task Manager ที่แทบ Details เมื่อคลิกขวาดูตรง affinity จะเห็นว่าโปรแกรมใช้ CPU ทั้ง 2 Core



คราวนี้ให้เราสร้าง bat file ขึ้นมาตั้งชื่อเป็น Wordpad-01 โดยมีข้อความดังภาพครับ (หากใครไม่รู้ path สำหรับรันโปรแกรมตัวอื่นๆ ให้ไปดูใน shortcut ของโปรแกรมนั้นๆ เลยครับ)



จากคำสั่งด้านบนค่าของ affinity จะเป็นตัวกำหนดว่าโปรแกรมที่จะรันนั้นจะใช้ CPU กี่ Core โดยตัวเลขที่กำหนดจะเป็น Hex ซึ่งจะถูกแปลงเป็น binary เพื่อกำหนดการบิด-เปิด Coreตามภาพด้านล่างครับ (ใครอยากให้โปรแกรมใช้ Core ไหนได้บ้างไปแปลง Hex เป็น binary ดูก่อนที่ Link นี้เลย http://www.mathsisfun.com/binary-decimal-hexadecimal-converter.html)




จากนั้นให้เปลี่ยนไฟล์ .rtf ซึ่งปกติจะเปิดด้วย wordpad ให้มาเปิดด้วย bat file ที่เราทำขึ้นครับ
จริงๆ เพียงเท่านี้ก็เสร็จแล้ว ทุกครั้งที่เราคลิกเปิดไฟล์ .rtf ตัวไฟล์ก็จะถูกเปิดด้วย WordPad ที่รันด้วย CPU 1 Core
แต่มีข้อสังเกตุคือ icon ของไฟล์ .rtf มันดันเปลี่ยนไปเป็นรูปแผ่นกระดาษขาวๆ ซะอย่างงั้น เอาละสิถ้าเราทำแบบนี้กับโปรแกรมอื่นอีก มันก็จะเป็น icon ขาวๆ แยกไม่ออกว่าไฟล์ไหน โปรแกรมไหนกันแน่



วิธีแก้ให้เปิดโปรแกรม FileTypesMan ขึ้นมาครับ (Download ได้จาก Link นี้ http://www.nirsoft.net/utils/file_types_manager.html) แล้วคลิกขาวที่ .rtf เลือก Edit Seected File Type



จากนั้นให้ไปเลือก Default Icon ใหม่ (ซึ่งมันก็ขึ้นมาให้เลือกเป็นตัวเดิมนั่นแหละ เราก็ OK ได้เลย)



เสร็จแล้วไฟล์ .rtf ที่เรากำหนดให้เปิดด้วย bat file ก็จะมี Icon เป็นของ WordPad ดังเดิม



เมื่อคลิกเปิดไฟล์ .rtf ก็จะถูกรันด้วย WordPad ขึ้นมาตามภาพ เมื่อเข้าไปดูที่ affinity ก็จะพบว่าโปรแกรมรันด้วย CPU Core เดียวตามที่เรากำหนด


ปล.วิธีนี้ทำในฝั่ง Server ดังนั้นจึงนำไปประยุคใช้ได้กับ Remote Desktop ทุกตัวเลยครับ รวมไปถึง Remote App ก็ใช้ได้

ไม่มีความคิดเห็น:

แสดงความคิดเห็น