# nesesito mejorar rendimiento del sistema (CERRADO)

## sasho23

Hola, tengo una nueva instalacion, que todavia estoy afilando! Es una maquina HP Pavilion dv5  AMD Turion64 con 2 x 2 Gigas de RAM y una ATI de 512 MB.

Bueno,  lo que intento es aprovechar esas 4 gigas de ram y el CPU por una parte.Estuve leyendo sobre el tema y decidi poner en 

 *Quote:*   

> MAKEOPTS="-j12"

 

ya que supongo que tampoco es demasiado.Al emerge "paquete" se me bloqueaba todo y la unica solucion es mantener el boton de on/off apretado hasta que se apague.Al mismo tiempo ejecuto el "htop" para seguir el sistema y a veces se me bloquea sin estar los procesadores a 100%. Lo logico es ir bajando los "-j12" y lo hice.Llegue hasta "-j3" (que es lo que recomiendan en la guia oficial) y seguia con los bloqueos.Al final tuve que comentar con

 *Quote:*   

> #MAKEOPTS="-j3"

 

y entonces  SI que funccionaba. Yo estoy seguro que este CPU deberia poder trabajar con mayor numero y alli esta el problema.No se a que se debe el bajo rendimiento.

Luego en fstab

 *Quote:*   

> none                   /var/tmp/         tmpfs           nr_inodes=1M,size=2048M    0 0

 

para aprovechar mas el RAM. Al principio apuntaba en "/var/tmp/portage/" pero al ver mi emerge --info decia

 *Quote:*   

> PORTAGE_TMPDIR="/var/tmp"

 

y por eso la cambie, pero sin efecto.Tambien estuve jugando con el "size=2048M" subiendole, bajandole o quitandole entero y nada en "htop" lo normal cuando instalo algo es 500 - 600 de RAM

La SWAP esta sin estrenar. No se porque nunca llega a usarla. Bueno pues todo esto me mosquea. Llevo una semana intentando mejorar el sistema y lo unico que hago es empeorarla!!!

Por el otro lado uso "fglrx" con ati-drivers y como "root" me van mejor que con mi usuario.Al entrar en sistema como root carga "algo" mas rapido, pero ese algo lo noto con simple ojo! Y luego en dos terminales ejecuto como root y como user

```
glxgears
```

y me da mayor numero al root.

Aqui os dejo mi emerge info y el fstab. Si se os ocurre algo decidme por favor.

```
tux sasho23 # emerge --info                             

Portage 2.2_rc33 (default/linux/amd64/2008.0/desktop, gcc-4.4.0, glibc-2.8_p20080602-r1, 2.6.28-gentoo-r5 x86_64)                                                                             

=================================================================                              

System uname: Linux-2.6.28-gentoo-r5-x86_64-AMD_Turion-tm-_X2_Ultra_Dual-Core_Mobile_ZM-82-with-glibc2.2.5                                                                                    

Timestamp of tree: Tue, 16 Jun 2009 16:00:01 +0000                                             

app-shells/bash:     3.2_p39                                                                   

dev-java/java-config: 2.1.7                                                                    

dev-lang/python:     2.5.4-r2                                                                  

dev-util/cmake:      2.6.4                                                                     

sys-apps/baselayout: 1.12.11.1                                                                 

sys-apps/sandbox:    1.6-r2                                                                    

sys-devel/autoconf:  2.13, 2.63                                                                

sys-devel/automake:  1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.2                                      

sys-devel/binutils:  2.18-r3                                                                   

sys-devel/gcc-config: 1.4.1                                                                    

sys-devel/libtool:   1.5.26                                                                    

virtual/os-headers:  2.6.27-r2                                                                 

ACCEPT_KEYWORDS="amd64"                                                                        

CBUILD="x86_64-pc-linux-gnu"                                                                   

CFLAGS="-march=k8 -msse3 -O3 -pipe -funit-at-a-time -funswitch-loops"                          

CHOST="x86_64-pc-linux-gnu"                                                                    

CONFIG_PROTECT="/etc /usr/share/config"                                                        

CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/udev/rules.d"               

CXXFLAGS="-march=k8 -msse3 -O3 -pipe -funit-at-a-time -funswitch-loops"                        

DISTDIR="/usr/portage/distfiles"                                                               

FEATURES="distlocks fixpackages paralell_fetch parallel-fetch preserve-libs protect-owned sandbox sfperms strict unmerge-orphans userfetch"                                                   

GENTOO_MIRRORS="http://ftp.udc.es/gentoo/ "                                                    

LANG="bg_BG.UTF-8"                                                                             

LDFLAGS="-Wl,-O1 -Wl,--enable-new-dtags -Wl,--sort-common -s"

LINGUAS="bg"

PKGDIR="/usr/portage/packages"

PORTAGE_CONFIGROOT="/"

PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"

PORTAGE_TMPDIR="/var/tmp"

PORTDIR="/usr/portage"

SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"

USE="3dnow 3dnowext X aalib acl acpi alsa amd64 bash-completion berkdb bluetooth branding bzip2 cairo cdr cli cracklib crypt cups custom-cflags dbus dga directfb dri dvd dvdr dvdread eds emboss encode esd evo fam fbcon firefox fortran gdbm gif gpm gstreamer gtk hal iconv isdnlog jack java jpeg kde ldap libcaca libnotify lirc lm_sensors mad midi mikmod mmx mp3 mpeg mtrr mudflap multilib multislot ncurses nls nptl nptlonly ogg opengl openmp pam pcre pdf perl pmu png ppds pppd profile python qt3 qt3support qt4 quicktime readline reflection sdl session speex spell spl sse sse2 ssl startup-notification svg syscall sysfs tcpd tiff truetype unicode usb v4l vcd vorbis xml xorg xulrunner xv xvid xvmc zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="bg" USERLAND="GNU" VIDEO_CARDS="fglrx"

Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LC_ALL, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY

```

```
tux sasho23 # cat /etc/fstab 

# /etc/fstab: static file system information.

#

# noatime turns off atimes for increased performance (atimes normally aren't

# needed; notail increases performance of ReiserFS (at the expense of storage

# efficiency).  It's safe to drop the noatime options if you want and to

# switch between notail / tail freely.

#

# The root filesystem should have a pass number of either 0 or 1.

# All other filesystems should have a pass number of 0 or greater than 1.

#

# See the manpage fstab(5) for more information.

#

# <fs>                  <mountpoint>    <type>          <opts>          <dump/pass>

# NOTE: If your BOOT partition is ReiserFS, add the notail option to opts.

#/dev/sda3              /boot           ext3            noauto,noatime  1 2

/dev/sda3               /               ext3            noatime         0 1

/dev/sda1               none            swap            sw              0 0

/dev/sr0                /mnt/cdrom      auto            noauto,ro       0 0

/dev/sda4               /home/sasho23/sklad        auto            rw,user          0 0

#/dev/fd0               /mnt/floppy     auto            noauto          0 0

# glibc 2.2 and above expects tmpfs to be mounted at /dev/shm for

# POSIX shared memory (shm_open, shm_unlink).

# (tmpfs is a dynamically expandable/shrinkable ramdisk, and will

#  use almost no memory if not populated with files)

none                    /dev/shm        tmpfs           defaults        0 0

none                    /proc            proc           defaults        0 0

none                   /var/tmp/         tmpfs           nr_inodes=1M,size=2048M    0 0
```

Muchas gracias de antemano y hasta pronto.Last edited by sasho23 on Tue Jun 30, 2009 7:45 am; edited 1 time in total

----------

## pelelademadera

 *Quote:*   

> MAKEOPTS="-j12"

 es una bestialidad. el nº a usar es entre n+1 y 2n+1 siendo n el numero de micros.

o sea q tendria q ser entre 3 y 5

no se q es lo que queres mejorar presisamente, pero podes arrancar toqueteando las use que no uses. tenes una bestialidad de uses....

con respecto a la vga, no esperes milagros, ati se arrastra con los drivers.... es una lastima, pero es la verdad.

las portatiles para linux, tienen que ser o intel o nvidia, ati no quiere a linux x el momento.

----------

## sasho23

Se supone que es un micro mas o menos bueno.Lo que pretendo es usarle al 100% y tambien pensaba que, al mas micros mas consumo de ram.

Los de Ati no me quejo en general.Aunque tambien me gustaria sacar mas provecho.Lo que no me gusta es que como root van mejor.Estuve leyendo en un post en el foro que se podria usar la memoria de la grafica como ram. Bien, pero es que yo no consigo usar la ram la que tengo!

----------

## i92guboj

 *sasho23 wrote:*   

> Hola, tengo una nueva instalacion, que todavia estoy afilando! Es una maquina HP Pavilion dv5  AMD Turion64 con 2 x 2 Gigas de RAM y una ATI de 512 MB.
> 
> Bueno,  lo que intento es aprovechar esas 4 gigas de ram y el CPU por una parte.Estuve leyendo sobre el tema y decidi poner en 
> 
>  *Quote:*   MAKEOPTS="-j12" 
> ...

 

Cualquier cpu puede funcionar con -j12 siempre que haya memoria. Otra cosa es que el rendimiento sea de pena. No tengo experiencia con tu cpu así que no se si 12 hilos es excesivo, creo que si, pero en cualquier caso eso es irrelevante, porque como mucho debería abortar el proceso si se queda sin memoria. Jamás eso es excusa para que la máquina se quede colgada.

Debido a la intensa carga de ram y cpu, mis sospechas van más bien orientadas a un fallo de memoria o bien una cpu que se calienta más de la cuenta. Lo primero se puede diagnosticar con memtest86, aunque no es efectivo al 100; lo segundo lo puedes mirar con cualquier monitor de memoria mientras compilas.

 *Quote:*   

> 
> 
> Por el otro lado uso "fglrx" con ati-drivers y como "root" me van mejor que con mi usuario.Al entrar en sistema como root carga "algo" mas rapido, pero ese algo lo noto con simple ojo! Y luego en dos terminales ejecuto como root y como user
> 
> ```
> ...

 

fglrx es una de las mayores causas de inestabilidad, pero bueno. Aparte de comprarse una nvidia no hay mucho que puedas hacer para arreglarlo si necesitas alto rendimiento en 3d. 

 *Quote:*   

> CFLAGS="-march=k8 -msse3 -O3 -pipe -funit-at-a-time -funswitch-loops"                          
> 
> CXXFLAGS="-march=k8 -msse3 -O3 -pipe -funit-at-a-time -funswitch-loops"                        
> 
> 

 

-funit-at-a-time: está incluído en -O, y por tanto en -O1, -O2 y -O3. Redundante.

-funswitch-loops: es parte de -O3. Redundante.

-march=k8 -msse3 es correcto, aunque en las nuevas versiones de gcc hay un nuevo set the marchs que se ocupan de sse3 por tí para que no tengas que ponerlo por separado: k8-sse3, opteron-sse3, athlon64-sse3. Así podrías cambiar (-march=k8 -msse3 por -march=k8-sse3). Es un detalle sin importancia de todas formas. Nada de esto va a solucionar tu problema. -O2 es normalmente considerado más estable, pero si tu máquina se congela no creo que sea por usar -O3 en su lugar.

----------

## sasho23

Muchas gracias i92guboj ya estan cambiadas las CFLAGS. Y si es cierto que no se me cuela por lo de -O3, porque se me olvidava mencionarlo antes pero estuve con -O2 tambien y lo mismo.

Estoy mirando ahora mismo el memtest86 y en realidad hay dos:

 *Quote:*   

> *  sys-apps/memtest86
> 
>       Latest version available: 3.3
> 
>       Latest version installed: [ Not Installed ]
> ...

 

Estoy instalando el memtest+ y luego os pegare el resultado del test.

Tambien dijiste:

 *Quote:*   

> lo segundo lo puedes mirar con cualquier monitor de memoria mientras compilas

 

como por ejemplo el sys-process/htop no? 

De todas formas... se que no soys videntes, pero que podria provocar estos cuelgues???

Gracias de nuevo y hasta pronto!

----------

## i92guboj

 *sasho23 wrote:*   

> 
> 
> Tambien dijiste:
> 
>  *Quote:*   lo segundo lo puedes mirar con cualquier monitor de memoria mientras compilas 
> ...

 

Pardon moi. Quería decir "monitor de temperatura" por supuesto. Para controlar la temperatura de la cpu mientras compilas. Conky, gkrellms, lm_sensors... hay varios programas que te pueden ayudar con eso.

 *Quote:*   

> De todas formas... se que no soys videntes, pero que podria provocar estos cuelgues???
> 
> Gracias de nuevo y hasta pronto!

 

Este tipo de problemas (cuelgues duros en seco, reseteos inesperados, etc) son casi siempre causa de hardware defectuoso. El kernel también podría provocar algo similar, pero asumo que estás usando un kernel estable y sin parches experimentales ni historias extrañas.

----------

## diegoto

Buenas, mira yo tengo distinto procesador que el tuyo pero el mejor rendimiento en cuanto a la velocidad de compilación me quedo con -j4 porque esto ? compile el kernel con distintos hilos y me fije cual duro menos  :Very Happy:  en mi caso -j4.

Tengo una Intel Quad Core 6600.

El tiempo me fije con, "time make -j4 bzImage"

Fijate si te sirve la prueba.

Saludos

----------

## Txema

Un apuntillo, uses lo que uses para ver la temperatura vas a necesitar compilar lm_sensors, el resto no son más que frontends.

Además necesitarás compilar los módulos que te pida cuando lo configures por primera vez (sensors-detect).

Saludos.

----------

## sasho23

Bueno lo de memtest86 ya esta y sin errores ninguno.No sabia que cuesta tanto.Hice primero la prueba tal y como iba y luego me meti en las configuraciones y volvi a hacer las pruebas de o a 9.Y bien supongamos que la RAM esta sana. Lo de los sensor lo probare mas tarde hoy, porque estoy liado.

Y tengo una pregunta o mas bien pienso en voz alta: Y si he puesto algo mal o he dejado de poner algo en "processor type and fetures" en el kernel?

Si no os importa alguien con una AMD64 y que le va bien que deja aqui su configuracion de la seccion esta en el kernel.

Hasta la proxima y gracias.

----------

## Inodoro_Pereyra

De uno de mis K8:

```
[*] Tickless System (Dynamic Ticks)                                             │ │  

  │ │         [*] High Resolution Timer Support                                               │ │  

  │ │         [*] Symmetric multi-processing support                                          │ │  

  │ │         [*] Enable MPS table                                                            │ │  

  │ │             Subarchitecture Type (PC-compatible)  --->                                  │ │  

  │ │         [ ] RDC R-321x SoC                                                              │ │  

  │ │         [*] Single-depth WCHAN output                                                   │ │  

  │ │         [ ] Paravirtualized guest support  --->                                         │ │  

  │ │         [ ] Memtest                                                                     │ │  

  │ │             Processor family (Opteron/Athlon64/Hammer/K8)  --->                         │ │  

  │ │         [*] Generic x86 support                                                         │ │  

  │ │         [*] HPET Timer Support                                                          │ │  

  │ │         (64) Maximum number of CPUs (2-512)                                             │ │  

  │ │         [*] SMT (Hyperthreading) scheduler support                                      │ │  

  │ │         [*] Multi-core scheduler support                                                │ │  

  │ │             Preemption Model (Voluntary Kernel Preemption (Desktop))  --->              │ │  

  │ │         [ ] Machine Check Exception                                                     │ │  

  │ │         < > Toshiba Laptop support                                                      │ │  

  │ │         < > Dell laptop support                                                         │ │  

  │ │         [*] Enable X86 board specific fixups for reboot                                 │ │  

  │ │         <*> /dev/cpu/microcode - microcode support       

  │ │         [*]   Intel microcode patch loading support                                     │ │  

  │ │         [ ]   AMD microcode patch loading support                                       │ │  

  │ │         <*> /dev/cpu/*/msr - Model-specific register support                            │ │  

  │ │         <*> /dev/cpu/*/cpuid - CPU information support                                  │ │  

  │ │             High Memory Support (4GB)  --->                                             │ │  

  │ │             Memory model (Flat Memory)  --->                                            │ │  

  │ │         [*] 64 bit Memory and IO resources (EXPERIMENTAL)                               │ │  

  │ │         [*] Add LRU list to track non-evictable pages                                   │ │  

  │ │         [*] Allocate 3rd-level pagetables from highmem                                  │ │  

  │ │         [ ] Check for low memory corruption                                             │ │  

  │ │         [*] Reserve low 64K of RAM on AMI/Phoenix BIOSen                                │ │  

  │ │         [ ] Math emulation                                                              │ │  

  │ │         [*] MTRR (Memory Type Range Register) support                                   │ │  

  │ │         [ ]   MTRR cleanup support                                                      │ │  

  │ │         [*]   x86 PAT support                                                           │ │  

  │ │         [*] EFI runtime service support                                                 │ │  

  │ │         [*] Enable seccomp to safely compute untrusted bytecode                         │ │  

  │ │             Timer frequency (1000 HZ)  --->                                             │ │  

  │ │         [*] kexec system call                                                           │ │  

  │ │         [*] kernel crash dumps                                                          │ │  

  │ │         (0x1000000) Physical address where the kernel is loaded            

  │ │         [*] Build a relocatable kernel (EXPERIMENTAL)                                   │ │  

  │ │         (0x200000) Alignment value to which kernel should be aligned                    │ │  

  │ │         [*] Support for hot-pluggable CPUs                                              │ │  

  │ │         [ ] Compat VDSO support                                                         │ │  

  │ │         [ ] Built-in kernel command line       
```

Si no recuerdo mal, está todo como viene de serie salvo processor family y nunca tuve problemas.

Salud!

----------

## sasho23

Hola de nuevo. Inodoro_Pereyra muchas gracias por el post. y solo una cosita:

 *Quote:*   

> <*> /dev/cpu/microcode - microcode support       
> 
>   │ │         [*]   Intel microcode patch loading support                                     │ │ 
> 
>   │ │         [ ]   AMD microcode patch loading support

 

Hablamos de un amd, verdad? Espero que simplemente no ta hayas fijado en ese detalle.Yo el mio lo deje en AMD.

Os cuento que paso.Probe las opciones que me dejo Inodoro_Pereyra y sin cambios. Al final 

```
emerge -C gentoo-sources-2.6.28-r5

rm -rf /usr/src/linux-2.6.28-r5

emerge gentoo-sources-2.6.28-r5
```

y recompilandole entero de nuevo.despues probe con emerge gcc (total me ajuste las nuevas CFLAGS ) y empezo bastante prometedor com "-j12". Llego a usar a 100% las dos CPU y casi 2 Giga de ram.Pero despues de unos minutos se me cuelo otra vez. Justamente por eso estaba la pantalla de htop abierta y lo curioso es que se bloqueo en 100 % CPU (normal supongamos) y tan solo a 800 RAM. 

Los sensors-detect me dicen que he compilado algo mal, asi que sigo intentado con ellos. De momento voy a probar lo que dijo diegoto a ver hasta donde llegare.

Gracias de nuevo y hasta pronto. Y si teneis alguna otra idea no me importaria probarla  :Idea: 

----------

## Txema

Instala gkrellm con soporte para lm_sensors, configúralo y podrás ver el consumo de cpu, ram y swap "online"

A ver si el problema va a ser que está tirando de la swap y por eso te bloquea el PC... (sysctl vm.swappiness)

Si tienes sensores de temperatura y compilas los módulos que te indice sensors-detect, podrías ver también la temperatura, a ver si el hardware está mal.

Saludos.

----------

## Inodoro_Pereyra

 *sasho23 wrote:*   

> Hola de nuevo. Inodoro_Pereyra muchas gracias por el post. y solo una cosita:
> 
>  *Quote:*   <*> /dev/cpu/microcode - microcode support       
> 
>   │ │         [*]   Intel microcode patch loading support                                     │ │ 
> ...

 

Lo dejé como viene de serie por que ese kernel que te muestro corre sobre un semprom 2600 socket 754, no tiene soporte para actualización de microcode. (Por cierto, habría que interiorizarse mejor, pero creo que el tuyo tampoco).

Salud!

----------

## sasho23

Hola a todos, pienso cerar el tema. En mi opinion es cuestion de software inestable que uso. Es que esta mañana estaba pensando "desde cuando tengo estos cuelgues en el sistema" y me di cuenta que justamente desde que decidi  pasar a KDE4 y xorg-server-1.5. En aquel entonces cuando empezaba a bloquearse pense que habia hecho algo mal y por eso me puse con una instalacion nueva. Pero al seguir con los problemas llegue a escribir este tema, que tampoco a sido en valde. Me he puesto mejor las CFLAGS y lo de "time make -jn bzimage" lo mejor que me sale es "-j7" y asi lo tengo. 

De momento lo dejo asi en espera que con las nuevas versiones ira a mejor.

 *Quote:*   

> Instala gkrellm con soporte para lm_sensors, configúralo y podrás ver el consumo de cpu, ram y swap "online"

 

lo probe y hace lo mismo que "htop" . Y luego los "sensor-detect" no consiguen encontrar mis sensors.(recuerdo que en la primera instalacion lm_sensors tambien funcionaba).

Quiero darles las gracias por las ayudas que aportasteis y aqui seguiremos! Hasta pronto!

----------

