Hello everyone! I just talked to Lars Segerlund over the course of a few private emails, we've narrowed down the "Missed scheduling deadline" problem for LinuxCNC with PREEMPT_RT to an issue within RTAPI. A lot of people (if not everyone) has this problem. I have used debian kernels, I have compiled nearly 100 different kernels, changing settings in regards to ACPI, the RCU, every option that has a direct impact on latency, whether positive or negative, has been changing, with absolutely no change in latency.
Several kernel versions have been tried, such as the official debian PREEMPT_RT kernel, and several custom kernels that I configured completely from scratch (all options by default disabled, allowing me to turn on only the ones I need to boot my system) and no change what-so-ever in regards to pagefaults and latency. This is no time to say "don't use gentoo" "don't compile your own kernel" "your kernel config is broken" etc, this is an issue that relies within the LinuxCNC tree. I have been hacking away at RTAI and PREEMPT_RT for a few years now to know how they both work, inside and out. I am not however, experienced with LinuxCNC itself, but I can guarantee that this issue is not relevant to Linux distributions, kernel releases, kernel configs, tool chain issues, and so on and so fourth. After running cyclictest for hours tonight (12 threads) while in the background compiling kernels, GMP, GCC, GNU Mpc, all with 50 parallel compiling jobs, on top of all that, running a CPU burn-in utility doing excessive number crunching with the use of exactly 1,000 threads, with integers in the billions. Latency with cyclictest reached no higher than 110 microseconds, and that's with using the standard POSIX interval timer, and not even a fully tweaked kernel. The latency-test program in LinuxCNC almost instantly shoots up to over 200,000 nanoseconds upon interacting with the system at all (idling it can last a bit longer.) Launching LinuxCNC itself throws several errors as well, "unexpected real-time delay, check dmesg for details" (which for the record doesn't mention anything..) and basically says the same thing in the terminal window, just worded a bit differently. Lars Segerlund and I are going to be tackling this issue the best we can, but any changes to do with LinuxCNC are going to have to be by people besides myself. Changes that have to do with the kernel side of things, that part I can do. Any additional help is greatly appreciated! Alec Ari ------------------------------------------------------------------------------ This SF.net email is sponsored by Windows: Build for Windows Store. http://p.sf.net/sfu/windows-dev2dev _______________________________________________ Emc-developers mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/emc-developers
