Será que teremos uma versão do patch Omnislash para a versão 2.6.36 nos próximos dias?? rsrs
Aqui vão umas primeiras impressões: dos kernels da última safra, o melhor de eles me parece o 34. O 35 estava ruim, pelo menos do 35.4 até o 35.7. Foi por isso que começei a experimentar com o 36 tão cedo. Porém, o que vi até agora não me deixou muito satisfeito, e os patches CK e BFS não ajudaram muito.
Aquela diminuição de 20 para 5 no dirty_ratio do CK deixou o sistema com muitos travamentos, pelo menos no hardware que testei. Nunca vi o Linux travar tanto. Sempre que dou boot volto para o default:
sysctl -w vm.dirty_ratio=20Mas mesmo assim o sistema não fica fluido, como no 34.
Somente teve uma coisa boa inesperada que me surprendeu muito: o tempo de boot caiu quase 10 segundos, de 44 para 34, aproximadamente, no Debian lenny, sem optimizações, nem ureadahead.
Já que estamos falando do ureadahead, o patch funcionava bem, mas na hora da compilação o gcc dava um warning, não sei se no Ubuntu também:
---------------------------------------------
CC fs/exec.o
fs/exec.c: In function ‘open_exec’:
fs/exec.c:709: warning: passing argument 1 of ‘trace_open_exec’ discards qualifiers from pointer target type
include/trace/events/fs.h:66: note: expected ‘char *’ but argument is of type ‘const char *’
-----------------------------------------------
isso aí e por causa do patch do readahead, pois é ele que cria esse arquivo fs.h. Aí consegui eliminar o warning com a seguinte modificação: na linha 709 do arquivo
fs/exec.c trocar onde diz:
trace_open_exec(name);pela seguinte nova chamada:
trace_open_exec((char *)name);O (char *) antes do name é que se chama um "cast" e serve para trocar diferentes tipos em C, por exemplo de int para float, etc.
O Kolivas tem vários outros patches no site dele:
http://ck.kolivas.org/patches/bfs/bfs357-latency_bias.patchhttp://ck.kolivas.org/patches/bfs/bfs357-penalise_fork_depth_account_threads.patche também tinha um outro chamado
bfs357-schedule_groups_as_entity-1.patch, mas ele tirou. Somente sobreviviou uma versão incorporada no bfs357 para o kernel 35.7 no link:
http://ck.kolivas.org/patches/bfs/2.6.35/2.6.35.7-sched-bfs357+schedule_groups_as_entity-1.patchAqueles patches acima parecem interesantes. O latency_bias mexe na latencia dependendo do workload, aparentemente. Contudo, não entram fácil. Tive que fazer várias mudanças para aplicar e compilar. Posso passar depois, se alguem tiver coragem de experimentar, mas são coisas muito instáveis, até o Kolivas tirou o schedule_group do site.