low efficiency for cpu vp
Posted in 2022
Cherry saw 28% efficiency on two CPU VPs on a 3-CPU Informix 12.1 VM with low CPU use. Fabrice PLATEL said low efficiency usually means CPU unavailable to the threads. Art Kagel said about one CPU VP per 500-750MHz of core speed is workable and suggested trying 6. Cherry accepted this and planned to test more CPU VPs.
Auto-generated by Claude from the posts below — may be imperfect; read the full thread.
Topics: Performance & Tuning, Versions, Editions & End-of-Life
Hello I see low efficiency for CPU VP for one of my production servers. I wonder what it does mean. 2 CPU VPs are sufficiently doing their job or more CPU VP is required. How does this number(Eff %) useful in calculating Instance performance? Although user is not complaining about any performance issue. Informix Version 12.1. MT global info: sessions threads vps lngspins time 92 135 10 7577 2007762 sched calls thread switches yield 0 yield n yield forever total: 2475965352 1512545156 1773829337 86443825 263816316 per sec: 171427 25136 153156 174 10177 Virtual processor summary: class vps usercpu syscpu total cpu 2 455648.87 81694.59 537343.46 aio 1 43.39 247.60 290.99 lio 1 5.46 10.66 16.12 pio 1 5.24 10.59 15.83 adm 1 38.03 58.93 96.96 soc 1 2813.64 5401.61 8215.25 msc 1 0.85 0.87 1.72 adt 1 5.35 10.58 15.93 fifo 1 5.52 10.96 16.48 total 10 458566.35 87446.39 546012.74 Individual virtual processors: vp pid class usercpu syscpu total Thread Eff 1 2361 cpu 225782.17 40655.76 266437.93 937791.94 28% 2 2824 adm 38.03 58.93 96.96 0.00 0% 3 2825 lio 5.46 10.66 16.12 16.12 100% 4 3015 pio 5.24 10.59 15.83 15.83 100% 5 3080 aio 43.39 247.60 290.99 322.61 90% 6 3126 msc 0.85 0.87 1.72 53.71 3% 7 3181 adt 5.35 10.58 15.93 15.93 100% 8 3240 fifo 5.52 10.96 16.48 16.48 100% 9 3257 cpu 229866.70 41038.83 270905.53 950125.53 28% 10 3284 soc 2813.64 5401.61 8215.25 NA NA tot 458566.35 87446.39 546012.74 Regards, ------------------------------ Cherry ------------------------------ #Informix
Hi Cherry, You should investigate the cpu usage of other processes (another Informix instance or maybe processes not related to Informix at all) on the same machine Low efficiency usually means that threads scheduled to run on a VP were not running on the CPU because the CPU was not available. It could also depend on the number of physical CPU cores you have on your server or VM and the multi-threading capabilities of the physical processor (hyperthreading for intel, SMT for IBM POWER). Regards Fabrice ------------------------------ Fabrice PLATEL ------------------------------
Hello Fabrice, Thanks for your reply. FYI, There are no other informix instance running on this server and It is VM with no multi threading(i checked with lscpu command). it has 3 CPU allocated. However i see CPU utilization is quite normal only(<10%) for most of the time. I understand KAIO is enabled so both IO and CPU are performed through 2 CPU VPs. I am wondering if i can allocate 2 more CPU VP(total 4 CPU VP) although VM is running with 3 CPU only. Is it okay to allocate more CPU VP than CPU count? because users are complaining on performance during month end jobs. Regards, Cherry ------------------------------ Cherry ------------------------------
Cherry: Testing I did along with several other DBAs across multiple architectures and CPU types back in the mid-90s indicates that you can run one CPU VP for every about 500 - 750MHZ of core speed on each core depending on the type of processor. On Intel I would use the 750 figure. So, if your three cores are running at say 3GHZ to keep it simple, you could run as many as six per core or 18 on the system. The actual number has varied over the years as storage gets faster (so each VP can take advantage of more cycles because it spends less time waiting for IO) and as cores get faster and more internally efficient. I'm comfortable with the 750MHZ figure right now as a general rule. Certainly you could try increasing from 2 CPU VPs to 6 and see how it goes. The 10% CPU utilization your report for your three cores would support running more, but there's no harm in starting slow and working your way up. Art ------------------------------ Art S. Kagel, President and Principal Consultant ASK Database Management Corp. www.askdbmgt.com ------------------------------
Hello Art, Perfect. Your reply clarified my doubt. Now i can calculate and test increasing CPU VPs with your formula. CPU(s): 3 On-line CPU(s) list: 0-2 Thread(s) per core: 1 Core(s) per socket: 1 Socket(s): 3 NUMA node(s): 1 Vendor ID: GenuineIntel CPU family: 6 Model: 79 Model name: Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz Stepping: 1 CPU MHz: 2097.570 ------------------------------ Cherry ------------------------------