Autor Tópico: Kernel Omnislash (Unofficial) - Aprendendo a voar sem segredos!!!  (Lida 2480965 vezes)

Offline Ricardo_Branco

  • Usuário Ubuntu
  • *
  • Mensagens: 61
    • Ver perfil
Re: Kernel Omnislash (Unofficial) - Aprendendo a voar sem segredos!!!
« Resposta #3465 Online: 01 de MAR?O de 2011, 12:36 »
Bom... vamos ver... Galactus, não faltou um g (de gcc) no comando 1? (como coloquei abaixo não deu...)
1)
Citar
$cc -march=native -E -v - </dev/null 2>&1 | grep cc1

Saída:
Citar
gcc -march=native -E -v - </dev/null 2>&1 | grep cc1
 /usr/local/libexec/gcc/i686-pc-linux-gnu/4.5.2/cc1 -E -quiet -v - -march=pentium4 --param l1-cache-size=8 --param l1-cache-line-size=64 --param l2-cache-size=128 -mtune=pentium4

2)
Citar
echo "int main() { return 0; }" | gcc -march=core2 -v -Q -x c - 2>&1

Saída:
Citar
echo "int main() { return 0; }" | gcc -march=core2 -v -Q -x c - 2>&1
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc/i686-pc-linux-gnu/4.5.2/lto-wrapper
Target: i686-pc-linux-gnu
Configured with: ./configure --enable-languages=c,c++ --enable-threads=posix --with-arch-32=i686 --disable-libpchstdcxx --enable-shared --with-system-zlib --enable-nls --enable-clocale=gnu --enable-checking=release
Thread model: posix
gcc version 4.5.2 (GCC)
COLLECT_GCC_OPTIONS='-march=core2' '-v' '-Q'
 /usr/local/libexec/gcc/i686-pc-linux-gnu/4.5.2/cc1 -v - -dumpbase - -march=core2 -auxbase - -version -o /tmp/ccduNyi0.s
GNU C (GCC) version 4.5.2 (i686-pc-linux-gnu)
   compiled by GNU C version 4.5.2, GMP version 4.3.2, MPFR version 3.0.0-p8, MPC version 0.9
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
ignoring nonexistent directory "/usr/local/lib/gcc/i686-pc-linux-gnu/4.5.2/../../../../i686-pc-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
 /usr/local/include
 /usr/local/lib/gcc/i686-pc-linux-gnu/4.5.2/include
 /usr/local/lib/gcc/i686-pc-linux-gnu/4.5.2/include-fixed
 /usr/include
End of search list.
GNU C (GCC) version 4.5.2 (i686-pc-linux-gnu)
   compiled by GNU C version 4.5.2, GMP version 4.3.2, MPFR version 3.0.0-p8, MPC version 0.9
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
options passed:  -v - -march=core2
options enabled:  -falign-loops -fargument-alias -fauto-inc-dec
 -fbranch-count-reg -fcommon -fdelete-null-pointer-checks -fdwarf2-cfi-asm
 -fearly-inlining -feliminate-unused-debug-types -ffunction-cse -fgcse-lm
 -fident -finline-functions-called-once -fira-share-save-slots
 -fira-share-spill-slots -fivopts -fkeep-static-consts -fleading-underscore
 -fmath-errno -fmerge-debug-strings -fmove-loop-invariants
 -fpcc-struct-return -fpeephole -fsched-critical-path-heuristic
 -fsched-dep-count-heuristic -fsched-group-heuristic -fsched-interblock
 -fsched-last-insn-heuristic -fsched-rank-heuristic -fsched-spec
 -fsched-spec-insn-heuristic -fsched-stalled-insns-dep -fshow-column
 -fsigned-zeros -fsplit-ivs-in-unroller -ftrapping-math -ftree-cselim
 -ftree-forwprop -ftree-loop-im -ftree-loop-ivcanon -ftree-loop-optimize
 -ftree-parallelize-loops= -ftree-phiprop -ftree-pta -ftree-reassoc
 -ftree-scev-cprop -ftree-slp-vectorize -ftree-vect-loop-version
 -funit-at-a-time -fvar-tracking -fvar-tracking-assignments
 -fvect-cost-model -fzero-initialized-in-bss -m32 -m80387
 -m96bit-long-double -maccumulate-outgoing-args -malign-stringops -mcx16
 -mfancy-math-387 -mfp-ret-in-387 -mfused-madd -mglibc -mieee-fp -mmmx
 -mno-red-zone -mno-sse4 -mpush-args -msahf -msse -msse2 -msse3 -mssse3
 -mtls-direct-seg-refs
Compiler executable checksum: 1ffa7048ecffe846287aa0057b08e64b
 main
Analyzing compilation unit
Performing interprocedural optimizations
 <*free_lang_data> <visibility> <early_local_cleanups> <whole-program> <inline>Assembling functions:
 main
Execution times (seconds)
 parser                :   0.01 (33%) usr   0.00 ( 0%) sys   0.01 (17%) wall     193 kB (25%) ggc
 expand                :   0.00 ( 0%) usr   0.00 ( 0%) sys   0.01 (17%) wall       2 kB ( 0%) ggc
 integrated RA         :   0.01 (33%) usr   0.00 ( 0%) sys   0.00 ( 0%) wall       0 kB ( 0%) ggc
 final                 :   0.00 ( 0%) usr   0.00 ( 0%) sys   0.01 (17%) wall       0 kB ( 0%) ggc
 TOTAL                 :   0.03             0.00             0.06                775 kB
COLLECT_GCC_OPTIONS='-march=core2' '-v' '-Q'
 as -V -Qy --32 -o /tmp/cc9XLGI0.o /tmp/ccduNyi0.s
GNU assembler version 2.20.1 (i486-linux-gnu) using BFD version (GNU Binutils for Debian) 2.20.1-system.20100303
COMPILER_PATH=/usr/local/libexec/gcc/i686-pc-linux-gnu/4.5.2/:/usr/local/libexec/gcc/i686-pc-linux-gnu/4.5.2/:/usr/local/libexec/gcc/i686-pc-linux-gnu/:/usr/local/lib/gcc/i686-pc-linux-gnu/4.5.2/:/usr/local/lib/gcc/i686-pc-linux-gnu/
LIBRARY_PATH=/usr/local/lib/gcc/i686-pc-linux-gnu/4.5.2/:/usr/local/lib/gcc/i686-pc-linux-gnu/4.5.2/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-march=core2' '-v' '-Q'
 /usr/local/libexec/gcc/i686-pc-linux-gnu/4.5.2/collect2 --eh-frame-hdr -m elf_i386 -dynamic-linker /lib/ld-linux.so.2 /usr/lib/crt1.o /usr/lib/crti.o /usr/local/lib/gcc/i686-pc-linux-gnu/4.5.2/crtbegin.o -L/usr/local/lib/gcc/i686-pc-linux-gnu/4.5.2 -L/usr/local/lib/gcc/i686-pc-linux-gnu/4.5.2/../../.. /tmp/cc9XLGI0.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/local/lib/gcc/i686-pc-linux-gnu/4.5.2/crtend.o /usr/lib/crtn.o
.
.
Como deveria ser minha linha de comando?

Offline vampire_thunder

  • Usuário Ubuntu
  • *
  • Mensagens: 735
    • Ver perfil
Re: Kernel Omnislash (Unofficial) - Aprendendo a voar sem segredos!!!
« Resposta #3466 Online: 01 de MAR?O de 2011, 12:46 »
Sobre taxa de transferência, ontem aconteceu algo impressionante, e eu resolvi gravar:

http://forum.lineduc.ctics.sigeduc.info/download/taxa.avi


Quando comecei já estava em 14MB/s, mas iniciou com 6. Reparem que é crescente. Eu estava transferindo um grande volume de dados de dois HDs SATA plugados em portas USB (duas cases), ao mesmo tempo que eu fazia uma remasterização (parte superior) e convertia uma sequência de imagens em vídeos, com efeitos (lateral direita).


Agora vou ler o mega-post do Galactus  ;D

Offline Gunss

  • Usuário Ubuntu
  • *
  • Mensagens: 618
    • Ver perfil
Re: Kernel Omnislash (Unofficial) - Aprendendo a voar sem segredos!!!
« Resposta #3467 Online: 01 de MAR?O de 2011, 13:36 »
@Galactus, juro como me perdi no seu post  ;D
O que eu preciso adicionar no makefile?

@vampire Uma pergunta, no seu kernel que esta no repositorio você usa -march=native?

Offline galactus

  • Equipe Ubuntu
  • Usuário Ubuntu
  • *****
  • Mensagens: 4.685
    • Ver perfil
Re: Kernel Omnislash (Unofficial) - Aprendendo a voar sem segredos!!!
« Resposta #3468 Online: 01 de MAR?O de 2011, 13:38 »
Bom... vamos ver... Galactus, não faltou um g (de gcc) no comando 1? (como coloquei abaixo não deu...)

Como deveria ser minha linha de comando?


O comando está correto!


Seu sistema é 32 ou 64bits?

Linha do CFLAGs para 64bits:

Citar
CFLAGS="-O2 -pipe -march=native --param l1-cache-size=8 --param l1-cache-line-size=64 --param l2-cache-size=128 -mtune=pentium4"

Edit: Agora que eu vi que é 32bits!  ;D

Fica assim:
Citar
CFLAGS="-O2 -pipe -fomit-frame-pointer -march=native --param l1-cache-size=8 --param l1-cache-line-size=64 --param l2-cache-size=128 -mtune=pentium4"


Isso porque você está usando o GCC 4.5.2 que supostamente não sofre desce BUG!

Vocês podem ler a vontade:

http://en.gentoo-wiki.com/wiki/Safe_Cflags

http://en.gentoo-wiki.com/wiki/Hardware_CFLAGS

http://en.gentoo-wiki.com/wiki/Safe_Cflags/Intel

http://gcc.gnu.org/PR45483#c3

Edit2:  Muito importante!  Você só deve conseguir usar esse Kernel com essa versão do GCC!  A 4.5.2! 
« Última modificação: 01 de MAR?O de 2011, 14:03 por galactus »
BigLinux no Notebook  / Várias Distros Virtualizadas no PC.

Offline galactus

  • Equipe Ubuntu
  • Usuário Ubuntu
  • *****
  • Mensagens: 4.685
    • Ver perfil
Re: Kernel Omnislash (Unofficial) - Aprendendo a voar sem segredos!!!
« Resposta #3469 Online: 01 de MAR?O de 2011, 13:40 »
@Galactus, juro como me perdi no seu post  ;D
O que eu preciso adicionar no makefile?

@vampire Uma pergunta, no seu kernel que esta no repositorio você usa -march=native?

Onde você se perdeu meu fio?  ;D

Olha outro exemplo no caso do Ricardo Branco!

O vampire usa -mtune=generic, quanto ao march eu não sei!
BigLinux no Notebook  / Várias Distros Virtualizadas no PC.

Offline vampire_thunder

  • Usuário Ubuntu
  • *
  • Mensagens: 735
    • Ver perfil
Re: Kernel Omnislash (Unofficial) - Aprendendo a voar sem segredos!!!
« Resposta #3470 Online: 01 de MAR?O de 2011, 14:01 »
Eu uso -march e -mtune=native

Também não entendi muito o que terei de fazer, mas vou ler com mais calma depois.

Offline Gunss

  • Usuário Ubuntu
  • *
  • Mensagens: 618
    • Ver perfil
Re: Kernel Omnislash (Unofficial) - Aprendendo a voar sem segredos!!!
« Resposta #3471 Online: 01 de MAR?O de 2011, 14:02 »
Lendo isso daqui à um dos link que o Galactus postou
http://en.gentoo-wiki.com/wiki/Hardware_CFLAGS

eu entendi =) Me senti meio jegue até mesmo pelo modo como o cara do Gentoo explica (Ta-da). Mas o importante é que eu peguei a ideia.
Vou tentar fazer isso essa semana, quando as provas passarem =)


Valeu Galactus!!!!!

Offline galactus

  • Equipe Ubuntu
  • Usuário Ubuntu
  • *****
  • Mensagens: 4.685
    • Ver perfil
Re: Kernel Omnislash (Unofficial) - Aprendendo a voar sem segredos!!!
« Resposta #3472 Online: 01 de MAR?O de 2011, 14:05 »
Lendo isso daqui à um dos link que o Galactus postou
http://en.gentoo-wiki.com/wiki/Hardware_CFLAGS

eu entendi =) Me senti meio jegue até mesmo pelo modo como o cara do Gentoo explica (Ta-da). Mas o importante é que eu peguei a ideia.
Vou tentar fazer isso essa semana, quando as provas passarem =)


Valeu Galactus!!!!!

Huahuahuahuha

Meio jegue!  hauhauhauha

O cara do Gentoo é soda mesmo!  Ta-da!!! 

É como se ele te desce uma chamada: "Não é óbvio seu besta?!"   ;D ;D ;D
BigLinux no Notebook  / Várias Distros Virtualizadas no PC.

Offline Gunss

  • Usuário Ubuntu
  • *
  • Mensagens: 618
    • Ver perfil
Re: Kernel Omnislash (Unofficial) - Aprendendo a voar sem segredos!!!
« Resposta #3473 Online: 01 de MAR?O de 2011, 14:11 »
Lendo isso daqui à um dos link que o Galactus postou
http://en.gentoo-wiki.com/wiki/Hardware_CFLAGS

eu entendi =) Me senti meio jegue até mesmo pelo modo como o cara do Gentoo explica (Ta-da). Mas o importante é que eu peguei a ideia.
Vou tentar fazer isso essa semana, quando as provas passarem =)


Valeu Galactus!!!!!

Huahuahuahuha

Meio jegue!  hauhauhauha

O cara do Gentoo é soda mesmo!  Ta-da!!! 

É como se ele te desce uma chamada: "Não é óbvio seu besta?!"   ;D ;D ;D

Exatamente!!! ahUHAUH


Minhas CFLAGS!
CFLAGS="-O2 -pipe -march=core2 -msse4.1 --param l1-cache-size=32 --param
l1-cache-line-size=64 --param l2-cache-size=6144 -mtune=generic

uso um core 2 duo.
Mas quem usa o GCC 4.5.2 nem precisa se preocupar com isso né?

Offline galactus

  • Equipe Ubuntu
  • Usuário Ubuntu
  • *****
  • Mensagens: 4.685
    • Ver perfil
Re: Kernel Omnislash (Unofficial) - Aprendendo a voar sem segredos!!!
« Resposta #3474 Online: 01 de MAR?O de 2011, 14:22 »
Lendo isso daqui à um dos link que o Galactus postou
http://en.gentoo-wiki.com/wiki/Hardware_CFLAGS

eu entendi =) Me senti meio jegue até mesmo pelo modo como o cara do Gentoo explica (Ta-da). Mas o importante é que eu peguei a ideia.
Vou tentar fazer isso essa semana, quando as provas passarem =)


Valeu Galactus!!!!!

Huahuahuahuha

Meio jegue!  hauhauhauha

O cara do Gentoo é soda mesmo!  Ta-da!!! 

É como se ele te desce uma chamada: "Não é óbvio seu besta?!"   ;D ;D ;D

Exatamente!!! ahUHAUH


Minhas CFLAGS!
CFLAGS="-O2 -pipe -march=core2 -msse4.1 --param l1-cache-size=32 --param
l1-cache-line-size=64 --param l2-cache-size=6144 -mtune=generic

uso um core 2 duo.
Mas quem usa o GCC 4.5.2 nem precisa se preocupar com isso né?

O march fica em native!  o mtune é que não muda se uasr o GCC 4.5.2!
Se o seu sistema for 32bits tem que acrescentar o -fomit-frame-pointer depois do -pipe!
BigLinux no Notebook  / Várias Distros Virtualizadas no PC.

Offline Gunss

  • Usuário Ubuntu
  • *
  • Mensagens: 618
    • Ver perfil
Re: Kernel Omnislash (Unofficial) - Aprendendo a voar sem segredos!!!
« Resposta #3475 Online: 01 de MAR?O de 2011, 14:28 »
Lendo isso daqui à um dos link que o Galactus postou
http://en.gentoo-wiki.com/wiki/Hardware_CFLAGS

eu entendi =) Me senti meio jegue até mesmo pelo modo como o cara do Gentoo explica (Ta-da). Mas o importante é que eu peguei a ideia.
Vou tentar fazer isso essa semana, quando as provas passarem =)


Valeu Galactus!!!!!

Huahuahuahuha

Meio jegue!  hauhauhauha

O cara do Gentoo é soda mesmo!  Ta-da!!! 

É como se ele te desce uma chamada: "Não é óbvio seu besta?!"   ;D ;D ;D

Exatamente!!! ahUHAUH


Minhas CFLAGS!
CFLAGS="-O2 -pipe -march=core2 -msse4.1 --param l1-cache-size=32 --param
l1-cache-line-size=64 --param l2-cache-size=6144 -mtune=generic

uso um core 2 duo.
Mas quem usa o GCC 4.5.2 nem precisa se preocupar com isso né?

O march fica em native!  o mtune é que não muda se uasr o GCC 4.5.2!
Se o seu sistema for 32bits tem que acrescentar o -fomit-frame-pointer depois do -pipe!

no teu i7 tem que adicionar o -msse4.2 também né?

Offline Ricardo_Branco

  • Usuário Ubuntu
  • *
  • Mensagens: 61
    • Ver perfil
Re: Kernel Omnislash (Unofficial) - Aprendendo a voar sem segredos!!!
« Resposta #3476 Online: 01 de MAR?O de 2011, 16:49 »
Tá-dã.. rs....

Mas vou passar estas flags na hora de compilar né?

estava fazendo assim nas minhas compilações: (depois que chegar em casa vou mudar para o que o galactus me ajudou...)

Citar
CFLAGS="-O2 -pipe -march=pentium4 -mtune=pentium4" CXXFLAGS={$CFLAGS} ./configure ou make

Continuo usando na hora do comando? Devo colocar em algum arquivo? (tentei colocar no bashrc eu acho... mas quando colocava ps aux |grep gcc não aparecia)

Até mais.

Offline Gunss

  • Usuário Ubuntu
  • *
  • Mensagens: 618
    • Ver perfil
Re: Kernel Omnislash (Unofficial) - Aprendendo a voar sem segredos!!!
« Resposta #3477 Online: 01 de MAR?O de 2011, 17:12 »
Tá-dã.. rs....

Mas vou passar estas flags na hora de compilar né?

estava fazendo assim nas minhas compilações: (depois que chegar em casa vou mudar para o que o galactus me ajudou...)

Citar
CFLAGS="-O2 -pipe -march=pentium4 -mtune=pentium4" CXXFLAGS={$CFLAGS} ./configure ou make

Continuo usando na hora do comando? Devo colocar em algum arquivo? (tentei colocar no bashrc eu acho... mas quando colocava ps aux |grep gcc não aparecia)

Até mais.

o código fica -march=native e -mtune=generic
E isso você coloca no arquivo Makefile dentro da pasta do kernel 2.6.xy


ah, como é esse lance de colocar no .bashrc???? Qualquer programa que for compilar ele vai usar essas flags colocando ai?


Offline Ricardo_Branco

  • Usuário Ubuntu
  • *
  • Mensagens: 61
    • Ver perfil
Re: Kernel Omnislash (Unofficial) - Aprendendo a voar sem segredos!!!
« Resposta #3478 Online: 01 de MAR?O de 2011, 17:22 »
Tá-dã.. rs....

Mas vou passar estas flags na hora de compilar né?

estava fazendo assim nas minhas compilações: (depois que chegar em casa vou mudar para o que o galactus me ajudou...)

Citar
CFLAGS="-O2 -pipe -march=pentium4 -mtune=pentium4" CXXFLAGS={$CFLAGS} ./configure ou make

Continuo usando na hora do comando? Devo colocar em algum arquivo? (tentei colocar no bashrc eu acho... mas quando colocava ps aux |grep gcc não aparecia)

Até mais.

o código fica -march=native e -mtune=generic
E isso você coloca no arquivo Makefile dentro da pasta do kernel 2.6.xy

ah, como é esse lance de colocar no .bashrc???? Qualquer programa que for compilar ele vai usar essas flags colocando ai?

Então Gunss... lí que era para isso acontecer... mas testei e nao apareceu na saída do ps aux...

A mesma coisa acontece no apt-build... Ele compila sem flag nenhuma... por isso coloquei naquele outro post... (o do apt-build). Até achei um forum que o cara metia o pau no apt-build... que era mentira e tal...

Vamos dar mais uma pesquisada e ver se rola... facilitaria bastante né?

Offline Ricardo_Branco

  • Usuário Ubuntu
  • *
  • Mensagens: 61
    • Ver perfil
Re: Kernel Omnislash (Unofficial) - Aprendendo a voar sem segredos!!!
« Resposta #3479 Online: 01 de MAR?O de 2011, 18:46 »
Gunss... acho que com esses nossos pcs low end vamos precisar aprender mais sobre o kernel...

Vou tentar uma nova compilação do kernel e estava lendo sobre RAID... no menuconfig tem em Device Drivers uma opção chamada
Citar
Multiple devices driver support (RAID and LVM)
e dentro dela opções sobre o RAID.

Como não sei muito sobre nada.... www.google.com.br/linux achei:

Citar
http://www.aprigiosimoes.com.br/2009/08/02/raid-no-linux/

RAID 0 é utilizado restritamente para aprimorar o desempenho. Ele utiliza duas ou mais unidades IGUAIS de acesso para reduzir os tempos de gravação no disco e dispositivo de raid.

Este tópico na verdade fala em como fazer "RAID por sofwtare no Linux com o mdadm"

No .config do kernel que estou usando (peguei dentro da pasta arch do meu kernel) não estava marcando nada...

Não sei se pode ajudar... de repente alguém aqui do fórum mesmo possa tirar nossa dúvida.