Hi folks, Noticeable performance regression is seen in f0.4 CKRM on a process creation/deletion micro benchmark. It is a bit alleviated by disabling the numtasks resource controller, but still not negligible. IMHO, it would be an obstacle to put CKRM to the streamlined kernel.
According to kernel profile, ckrm_setclass_wq() consumes about 0.2% of cpu time during the benchmark. It seems to cause a major part of the regression. I guess the purpose of ckrm_setclass_wq() is to serialize ckrm_setclass_internal(), which is the true body of ckrm_setclass(), but why should it be serialized entirely? Even if it should be serialized, does it also should be serialized in the case of a task is classified to the default_class or CKRM_NOCLASS? In other words, should it be also serialized on a task creation/deletion in the default_class, which is never removed? The followings are the results of the benchmark. = vanilla 2.6.14 = $ ./lat_proc -N 100 fork Process fork+exit: 83.1061 microseconds $ ./lat_proc -N 100 fork Process fork+exit: 83.5152 microseconds $ ./lat_proc -N 100 fork Process fork+exit: 83.1194 microseconds = 2.6.14 + ckrm f0.4 w/ numtasks = $ ./lat_proc -N 100 fork Process fork+exit: 90.9000 microseconds $ ./lat_proc -N 100 fork Process fork+exit: 91.4333 microseconds $ ./lat_proc -N 100 fork Process fork+exit: 91.8667 microseconds = 2.6.14 + ckrm f0.4 w/o numtasks = $ ./lat_proc -N 100 fork Process fork+exit: 89.5333 microseconds $ ./lat_proc -N 100 fork Process fork+exit: 88.8710 microseconds $ ./lat_proc -N 100 fork Process fork+exit: 89.2419 microseconds # lat_proc is a process creation/deletion micro benchmark in lmbench. Thanks, MAEDA Naoaki ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click _______________________________________________ ckrm-tech mailing list https://lists.sourceforge.net/lists/listinfo/ckrm-tech