I added the following line to /etc/default/grubGRUB_CMDLINE_LINUX_DEFAULT=quiet splash isolcpus=1,3then ran sudo grub-update (and rebooted) but according to top processes are still being scheduled on CPU 1 and 3. What should I do about this?Things I was asked to add:nabeel@nabeel-Inspiron-3542:~$ cat /proc/cmdlineBOOT_IMAGE=/boot/vmlinuz-4.4.0-22-generic.efi.signed root=UUID=1e46ca65-843f-439a-8e2a-f5e666a03ffe ro quiet splash isolcpus=1,3 vt.handoff=7Output of top:PID USER      PR S P 182 root      20 S 0 183 root       0 S 0 220 root      20 S 0 223 root      20 S 0 253 root      20 S 2 261 root       0 S 0 312 root     -51 S 0 343 root       0 S 3 <-------- Processes being scheduled on CPU 1 and 3347 root       0 S 1 <--------373 root       0 S 2 398 root       0 S 0 474 root       0 S 2 478 root      20 S 0 548 systemd+  20 S 0 632 avahi     20 S 2 633 root      20 S 2 642 root      20 S 0 
`isolcpus` kernel parameter has no effect on Ubuntu 16.04 desktop
ubuntu;grub
I would guess those two processes are kworker or another kernel task.It appears that presently, isolcpus= only affects user space threads, and hence, kernel threads will show up on the isolated CPU's.From the RHEL documentation (emphasis mine),3.3.6.2. Isolating CPUs You can isolate one or more CPUs from the scheduler with the isolcpus boot parameter. This prevents the  scheduler from scheduling any user-space threads on this CPU. Once a  CPU is isolated, you must manually assign processes to the isolated  CPU, either with the CPU affinity system calls or the numactl command.Someone tried to patch this behaviour, but as far as I can tell, it wasn't acked.In summary, Ubuntu isn't ignoring the option, it's working as intended.  Whether it's working as desired is a different query.