Speed Patch
SpeedPatch
The CFS (completely fair scheduler) in our phone's kernel manages the allocation of resources (cpu/mem) between tasks. It was designed to cope with server-class machines such as web servers and databases, giving all tasks equal access to resources. This means if a server is really busy, then all tasks on the machine slow down equally.
Desktop/mobile class machines shouldn't work the same way as servers though. They have a human user who expects the machine to respond and give feedback within a certain time. If a machine is slow to respond, the user loses some sense of control over the machine.
This patch addresses the problem by taking note of what the user is doing right now, and using that information to accelerate the current task, and decelerate other tasks on the system. The user won't notice the background stuff going slower, they will just see their app working fast.
The patch does this by creating multiple classes of task
-------------------------------------------
/dev/cgroup/cpu/tasks
/dev/cgroup/cpu/desktop/tasks
/dev/cgroup/cpu/applications/tasks
/dev/cgroup/cpu/applications/standby/tasks
/dev/cgroup/cpu/applications/launcher/tasks
-------------------------------------------
If you look at the contents of these files, you'll see the process IDs of all the tasks in each class. CPU and memory are shared out to these classes using the files "cpu.shares", and "memory_limit_in_bytes". When lots of tasks are demanding CPU/memory at once, the resources are handed out to tasks depending on their share.
This is why your phone feels nicer when you have this patch - the kernel automatically classifies tasks and devotes more of cpu/mem to the "application" and "desktop" class tasks, and much less to other classes like "standby".
Section:
user/system
Bugtracker:
Releases
| Repository | Latest version |
| Fremantle Extras-devel free armel | speedpatch 4.0 |
| Fremantle Extras-devel free i386 | speedpatch 1.9 |
Changes
Package events
| Package | Repository | Event type | User | Timestamp |
| speedpatch 4.0 | Fremantle Extras free armel | Package is stable | System | 2012-02-29 04:55 UTC |
| speedpatch 4.0 | Fremantle Extras-testing free armel | Package promoted | karam baki | 2012-02-29 04:38 UTC |
| speedpatch 4.0 | Fremantle Extras-testing free armel | Promotion unlocked | System | 2012-02-28 20:50 UTC |
| speedpatch 3.6 | Fremantle Extras-testing free armel | Old version cleaned by repository management | System | 2012-02-19 00:47 UTC |
| speedpatch 4.0 | Fremantle Extras-testing free armel | Package is in testing | System | 2012-02-18 20:45 UTC |
| speedpatch 4.0 | Fremantle Extras-devel free armel | Package promoted | karam baki | 2012-02-18 20:25 UTC |
| speedpatch 3.9 | Fremantle Extras-devel free armel | Old version cleaned by repository management | System | 2012-02-18 19:13 UTC |
| speedpatch 3.8 | Fremantle Extras-devel free armel | Old version cleaned by repository management | System | 2012-02-18 19:13 UTC |
| speedpatch 3.7 | Fremantle Extras-devel free armel | Old version cleaned by repository management | System | 2012-02-18 19:13 UTC |
| speedpatch 4.0 | Fremantle Extras-devel free armel | Package imported | System | 2012-02-18 15:11 UTC |
| speedpatch 4.0 | Fremantle Extras-devel free armel | Build succeeded | System | 2012-02-18 14:50 UTC |
| speedpatch 4.0 | Fremantle Extras-devel free armel | Building | System | 2012-02-18 14:50 UTC |
| speedpatch 3.9 | Fremantle Extras-devel free armel | Build succeeded | System | 2012-02-18 14:44 UTC |
| speedpatch 3.9 | Fremantle Extras-devel free armel | Building | System | 2012-02-18 14:44 UTC |
| speedpatch 3.8 | Fremantle Extras-devel free armel | Build succeeded | System | 2012-02-18 14:32 UTC |
| speedpatch 3.8 | Fremantle Extras-devel free armel | Building | System | 2012-02-18 14:32 UTC |
| speedpatch 2.0 | Fremantle Extras-testing free armel | Old version cleaned by repository management | System | 2012-02-17 01:47 UTC |
| speedpatch 3.6 | Fremantle Extras-devel free armel | Old version cleaned by repository management | System | 2012-02-17 01:29 UTC |
| speedpatch 3.5 | Fremantle Extras-devel free armel | Old version cleaned by repository management | System | 2012-02-17 01:13 UTC |
| speedpatch 3.0 | Fremantle Extras-devel free armel | Old version cleaned by repository management | System | 2012-02-17 01:13 UTC |
| speedpatch 3.7 | Fremantle Extras-devel free armel | Package imported | System | 2012-02-16 22:42 UTC |
| speedpatch 3.7 | Fremantle Extras-devel free armel | Build succeeded | System | 2012-02-16 22:08 UTC |
| speedpatch 3.6 | Fremantle Extras-testing free armel | Package is in testing | System | 2012-02-16 21:46 UTC |
| speedpatch 3.6 | Fremantle Extras-devel free armel | Package promoted | karam baki | 2012-02-16 21:28 UTC |
| speedpatch 3.6 | Fremantle Extras-devel free armel | Package imported | System | 2012-02-16 21:12 UTC |
| speedpatch 3.6 | Fremantle Extras-devel free armel | Build succeeded | System | 2012-02-16 20:44 UTC |
| speedpatch 3.7 | Fremantle Extras-devel free armel | Build failed | System | 2012-02-16 20:42 UTC |
| speedpatch 3.7 | Fremantle Extras-devel free armel | Building | System | 2012-02-16 20:42 UTC |
| speedpatch 3.6 | Fremantle Extras-devel free armel | Build failed | System | 2012-02-16 20:40 UTC |
| speedpatch 3.6 | Fremantle Extras-devel free armel | Building | System | 2012-02-16 20:40 UTC |
| speedpatch 3.5 | Fremantle Extras-devel free armel | Package imported | System | 2012-02-16 20:11 UTC |
| speedpatch 3.5 | Fremantle Extras-devel free armel | Build succeeded | System | 2012-02-16 19:44 UTC |
| speedpatch 3.5 | Fremantle Extras-devel free armel | Building | System | 2012-02-16 19:44 UTC |
| speedpatch 3.0 | Fremantle Extras-devel free armel | Package promoted | karam baki | 2012-01-27 06:45 UTC |
| speedpatch 2.5 | Fremantle Extras-devel free armel | Old version cleaned by repository management | System | 2012-01-25 16:16 UTC |
| speedpatch 3.0 | Fremantle Extras-devel free armel | Package imported | System | 2012-01-25 12:13 UTC |
| speedpatch 3.0 | Fremantle Extras-devel free armel | Build succeeded | System | 2012-01-25 11:38 UTC |
| speedpatch 3.0 | Fremantle Extras-devel free armel | Building | System | 2012-01-25 11:38 UTC |
| speedpatch 2.0 | Fremantle Extras-devel free armel | Old version cleaned by repository management | System | 2012-01-24 22:16 UTC |
| speedpatch 2.5 | Fremantle Extras-devel free armel | Package imported | System | 2012-01-24 18:13 UTC |
| speedpatch 2.5 | Fremantle Extras-devel free armel | Build succeeded | System | 2012-01-24 17:38 UTC |
| speedpatch 2.5 | Fremantle Extras-devel free armel | Building | System | 2012-01-24 17:38 UTC |
| speedpatch 2.0 | Fremantle Extras-testing free armel | Package is in testing | System | 2011-12-29 13:45 UTC |
| speedpatch 2.0 | Fremantle Extras-devel free armel | Package promoted | karam baki | 2011-12-29 13:30 UTC |
| speedpatch 1.9-7 | Fremantle Extras-devel free armel | Old version cleaned by repository management | System | 2011-12-09 04:13 UTC |
| speedpatch 2.0 | Fremantle Extras-devel free armel | Package imported | System | 2011-12-09 00:11 UTC |
| speedpatch 2.0 | Fremantle Extras-devel free armel | Build succeeded | System | 2011-12-08 23:50 UTC |
| speedpatch 2.0 | Fremantle Extras-devel free armel | Build failed | System | 2011-12-08 23:44 UTC |
| speedpatch 2.0 | Fremantle Extras-devel free armel | Build failed | System | 2011-12-08 23:26 UTC |
| speedpatch 2.0 | Fremantle Extras-devel free armel | Building | System | 2011-12-08 23:26 UTC |
| speedpatch | Fremantle Extras-devel free armel | Old version cleaned by repository management | System | 2011-12-02 23:13 UTC |
| speedpatch | Fremantle Extras-devel free armel | Package imported | System | 2011-12-02 14:43 UTC |
| speedpatch 1.9-5 | Fremantle Extras-devel free armel | Old version cleaned by repository management | System | 2011-12-01 23:18 UTC |
| speedpatch 1.9-7 | Fremantle Extras-devel free armel | Package imported | System | 2011-12-01 19:12 UTC |
| speedpatch 1.9-7 | Fremantle Extras-devel free armel | Build succeeded | System | 2011-12-01 18:50 UTC |
| speedpatch 1.9-7 | Fremantle Extras-devel free armel | Building | System | 2011-12-01 18:50 UTC |
| speedpatch 1.9 | Fremantle Extras-devel free armel | Old version cleaned by repository management | System | 2011-09-02 20:16 UTC |
| speedpatch 1.9-5 | Fremantle Extras-devel free armel | Package imported | System | 2011-09-02 16:11 UTC |
| speedpatch 1.9-5 | Fremantle Extras-devel free armel | Build succeeded | System | 2011-09-02 15:42 UTC |
| speedpatch 1.9-5 | Fremantle Extras-devel free armel | Building | System | 2011-09-02 15:42 UTC |
| speedpatch 1.9 | Fremantle Extras-devel free i386 | Package imported | System | 2011-09-01 10:15 UTC |
| speedpatch 1.9 | Fremantle Extras-devel free armel | Package imported | System | 2011-09-01 10:12 UTC |
| speedpatch 1.9 | Fremantle Extras-devel free i386 | Build succeeded | System | 2011-09-01 09:56 UTC |
| speedpatch 1.9 | Fremantle Extras-devel free i386 | Building | System | 2011-09-01 09:56 UTC |
| speedpatch 1.9 | Fremantle Extras-devel free armel | Build succeeded | System | 2011-09-01 09:54 UTC |
| speedpatch 1.9 | Fremantle Extras-devel free armel | Building | System | 2011-09-01 09:54 UTC |
