View previous topic :: View next topic |
Author |
Message |
papu l33t
Joined: 25 Jan 2008 Posts: 729 Location: Sota algun pi o alzina...
|
Posted: Sat Oct 27, 2012 4:31 pm Post subject: ¿estoy usando la ram cuando compilo?{solucionado} |
|
|
Opciones kernel:
https://i.minus.com/iboND9AuFutiyj.png
https://i.minus.com/ibeb1b3RNoAhJW.png
df -hT:
Code: |
S. fitxers Tipus Mida En ús Lliure %Ús Muntat a
rootfs rootfs 46G 8,7G 35G 20% /
/dev/root ext4 46G 8,7G 35G 20% /
tmpfs tmpfs 7,8G 572K 7,8G 1% /run
udev devtmpfs 10M 0 10M 0% /dev
shm tmpfs 7,8G 140K 7,8G 1% /dev/shm
cgroup_root tmpfs 10M 0 10M 0% /sys/fs/cgroup
/dev/sdb1 ext2 122M 8,7M 107M 8% /boot
/dev/sdb3 ext4 23G 916M 21G 5% /home
/dev/sdc1 fuseblk 299G 168G 131G 57% /mnt/share
/dev/sde1 fuseblk 299G 57G 242G 20% /media/Iomega HDD
/dev/sdd3 fuseblk 639G 396G 244G 62% /media/B5B943D154DCAC1A |
actualmente ya estoy usando para compilar la ram(tmpfs) en lugar del hd ¿no?
usando udev no hace falta montar en fstab el tmpfs ¿cierto?
¿porqué shm tiene el mismo tamaño que tmpfs? es decir estan ocupando 7,8G cada uno, o solo uno de ellos a la vez, o realmente son la misma cosa para el sistema?
desconozco la diferencia entre shm y tmpfs ahora que lo pienso ¿cuál es?
saludos, adéu. _________________ --so ~amd64 & openrc --cpu 7700 non-x --ram 2x16GB --gpu RX 470
Last edited by papu on Thu Dec 13, 2012 1:51 am; edited 1 time in total |
|
Back to top |
|
|
cohone Tux's lil' helper
Joined: 27 Mar 2006 Posts: 113
|
Posted: Sat Oct 27, 2012 6:57 pm Post subject: |
|
|
Como has puesto la salida del df, deduzco que lo que quieres es usar la ram para los archivos temporales que se forman al emerger, si es así me da a mi que no lo estás haciendo..
tendrías que montar el /var/tmp/portage como tmpfs en /etc/fstab
aquí te lo explica bien: http://en.gentoo-wiki.com/wiki/Portage_TMPDIR_on_tmpfs |
|
Back to top |
|
|
papu l33t
Joined: 25 Jan 2008 Posts: 729 Location: Sota algun pi o alzina...
|
Posted: Sat Oct 27, 2012 7:15 pm Post subject: |
|
|
cohone wrote: | Como has puesto la salida del df, deduzco que lo que quieres es usar la ram para los archivos temporales que se forman al emerger, si es así me da a mi que no lo estás haciendo..
tendrías que montar el /var/tmp/portage como tmpfs en /etc/fstab
aquí te lo explica bien: http://en.gentoo-wiki.com/wiki/Portage_TMPDIR_on_tmpfs |
si eso quiero hacer, ¿es que no lo esta haciendo ahora? no entiendo porque no, entonces estos tmfps que son?:
Code: | tmpfs tmpfs 7,8G 572K 7,8G 1% /run
shm tmpfs 7,8G 140K 7,8G 1% /dev/shm |
, de todas formas en esa pagina pone que no hay ninguna mejora apreciable...más allà de ser un modo de evitar el desgaste de hd he comprobado que a nivel de compilación no hay mejora.
Code: | genlop -t clementine
* media-sound/clementine
Thu Oct 25 14:59:18 2012 >>> media-sound/clementine-1.1.0 antes
merge time: 8 minutes and 3 seconds.
Sat Oct 27 21:40:07 2012 >>> media-sound/clementine-1.1.0 ahora usando tmpfs en fstab
merge time: 8 minutes and 9 seconds. |
_________________ --so ~amd64 & openrc --cpu 7700 non-x --ram 2x16GB --gpu RX 470 |
|
Back to top |
|
|
cohone Tux's lil' helper
Joined: 27 Mar 2006 Posts: 113
|
Posted: Sun Oct 28, 2012 9:07 am Post subject: |
|
|
Pues si te fijas, verás que los directorios que montas como tmpfs con /run y /dev/shm, no se si emerge detecta esos tmpfs y los usa, prueba a compilar y mientras compila haz un df, a ver si sube su uso.
Yo en mi configuración, emerge usa el directorio /var/tmp/portage para descomprimir el source y compilarlo desde allí, su ese directorio está montado sobre un disco, pues usa un disco y si está montado sobre ram, pues usa la ram...
Si merece o no la pena... pues no lo he comprobado nunca, doy por hecho de que sí ya que la ram es más rápida, pero el tenerla ocupada tal vez penalice la compilación por otro lado...
el /run se pone en tmpfs, por lo visto, porque había algún problema con algunas aplicaciones al inicio, que podrían no tener /var/run montado y lo solucionaron de esta forma
y el /dev/shm, si no me equivoco sirve para compartir datos entre aplicaciones,por ej. para compartir memoria ram con la tarjeta de video y que ésta pueda utilizarla directamente (sin tener que copiar los datos a su memoria interna) |
|
Back to top |
|
|
gringo Advocate
Joined: 27 Apr 2003 Posts: 3793
|
Posted: Mon Oct 29, 2012 11:24 am Post subject: |
|
|
Una aclaración : si ya estás usando -pipe realmente gcc ya usará ram para sus operaciones internas. Esto implica obviamente una mayor consumo de ram pero la compilación será mas rápida.
Además, portage tb. tira de /dev/shm internamente para algunas operaciones ( siempre que esté disponible).
Lo que tu quieres es que cuando se desempaquete un tarball que lo haga en ram y que se compile desde ahi. Para eso sigue las instrucciones que te han puesto arriba.
Dudo mucho que notes alguna diferencia sustancial en el tiempo de compilación, a menos que tengas un disco duro del pleistoceno. La única ventaja que le veo es que usando tmpfs evitas la fragmentación del sistema de archivos.
saluetes |
|
Back to top |
|
|
Arctic Apprentice
Joined: 04 Jul 2011 Posts: 207
|
Posted: Tue Oct 30, 2012 12:12 am Post subject: |
|
|
gringo wrote: |
Dudo mucho que notes alguna diferencia sustancial en el tiempo de compilación, a menos que tengas un disco duro del pleistoceno. La única ventaja que le veo es que usando tmpfs evitas la fragmentación del sistema de archivos.
saluetes |
Un SSD alcanza ya unas velocidades muy elevadas, lo que ocurre es que dado que estos tienen un ciclo limitado de escrituras , no es mala idea tirar de Ram. Aunque como he comentado anteriormente tampoco debemos de obsesionarnos con este tipo de cosas, tambien los procesadores tienen un limite de horas de uso y no conozco a nadie que lo sobrepasase .
Un saludo _________________ ln -s /user/artic /user/arctic |
|
Back to top |
|
|
cameta Veteran
Joined: 04 Aug 2004 Posts: 1351
|
Posted: Tue Oct 30, 2012 8:33 am Post subject: |
|
|
La verdad para cuando se estropea algo teniendo en cuenta la velocidad a la que progresa el hardware ya está más que obsoleto. _________________ Si algo falla LEE el jodido manual, Si sigue fallando LEE BIEN el jodido manual. |
|
Back to top |
|
|
gringo Advocate
Joined: 27 Apr 2003 Posts: 3793
|
Posted: Tue Oct 30, 2012 12:01 pm Post subject: |
|
|
que los ssd tienen menos vida que un disco común de toda la vida es cierto, pero es lo que decis vosotros, se suele jubilar el hardware antes de que se llegue a su final de vida util.
a modo de ejemplo : yo tengo en mi portátil un ssd intel 320 y según el intel ssd toolbox este, si sigo con mi ritmo de uso habitual tengo disco para unos 13/14 años.
saluetes |
|
Back to top |
|
|
papu l33t
Joined: 25 Jan 2008 Posts: 729 Location: Sota algun pi o alzina...
|
Posted: Wed Oct 31, 2012 11:18 am Post subject: |
|
|
cohone wrote: | Pues si te fijas, verás que los directorios que montas como tmpfs con /run y /dev/shm, no se si emerge detecta esos tmpfs y los usa, prueba a compilar y mientras compila haz un df, a ver si sube su uso.
Yo en mi configuración, emerge usa el directorio /var/tmp/portage para descomprimir el source y compilarlo desde allí, su ese directorio está montado sobre un disco, pues usa un disco y si está montado sobre ram, pues usa la ram...
Si merece o no la pena... pues no lo he comprobado nunca, doy por hecho de que sí ya que la ram es más rápida, pero el tenerla ocupada tal vez penalice la compilación por otro lado...
el /run se pone en tmpfs, por lo visto, porque había algún problema con algunas aplicaciones al inicio, que podrían no tener /var/run montado y lo solucionaron de esta forma
y el /dev/shm, si no me equivoco sirve para compartir datos entre aplicaciones,por ej. para compartir memoria ram con la tarjeta de video y que ésta pueda utilizarla directamente (sin tener que copiar los datos a su memoria interna) |
el df -hT practicamente no varia nada compilando, ¿el directorio /run ese donde anda? o es el /var/tmp/portage/xxx/xxxx/work.... ...no entiendo la dif entre tmpfs y shm y porque estan montados con identico espacio a la vez... a ver si a parte del foro encuentro algo por www que me saque de dudas.
gringo wrote: | Una aclaración : si ya estás usando -pipe realmente gcc ya usará ram para sus operaciones internas. Esto implica obviamente una mayor consumo de ram pero la compilación será mas rápida.
Además, portage tb. tira de /dev/shm internamente para algunas operaciones ( siempre que esté disponible).
Lo que tu quieres es que cuando se desempaquete un tarball que lo haga en ram y que se compile desde ahi. Para eso sigue las instrucciones que te han puesto arriba.
Dudo mucho que notes alguna diferencia sustancial en el tiempo de compilación, a menos que tengas un disco duro del pleistoceno. La única ventaja que le veo es que usando tmpfs evitas la fragmentación del sistema de archivos.
saluetes |
si tengo configurado el -pipe
Code: | CFLAGS="-march=native -O2 -pipe"
CXXFLAGS="${CFLAGS}"
CHOST="x86_64-pc-linux-gnu"
MAKEOPS="-j5"
LINGUAS="ca ca_ES"
cpu="ssse3 sse3 sse4_1 sse4_2 avx smp"
multimedia="-oss pulseaudio dvd vdpau alsa xvmc gstreamer openal v4l bluray cdda cddb"
escriptori="-gtk -gnome qt4 kde qt3support"
general="-hal -handbook dbus udev unicode sqlite bash-completion icu policykit zeroconf avahi lzma spell"
xorg_kde="opengl X semantic-desktop opencl xv"
disseny="truetype png jpeg svg lcms jpeg2k"
USE="${cpu} ${multimedia} ${escriptori} ${general} ${xorg_kde} ${disseny}"
INPUT_DEVICES="evdev"
VIDEO_CARDS="radeon"
ALSA_CARDS="hda-intel"
FEATURES="ccache parallel-fetch nodoc candy"
#PORTAGE_ELOG_CLASSES="error info"
#PORTAGE_ELOG_SYSTEM="metalog"
EMERGE_DEFAULT_OPTS="-v --keep-going --with-bdeps=y --autounmask-write=y"
ACCEPT_LICENSE="*"
ACCEPT_KEYWORDS="~amd64"
GENTOO_MIRRORS="ftp://mirror.switch.ch/mirror/gentoo/"
SYNC="rsync://rsync4.fr.gentoo.org/gentoo-portage"
#source /var/lib/layman/make.conf
|
Y pare ser que usa el /var/tmp/portage para compilar eso indica claremente que esta usanro la ram entonces, ¿no? sin tener que configurar el tmpfs en el /etc/fstab
https://i.minus.com/ifDbHohQJQ8Y0.png
https://i.minus.com/ibxz95SRxq7djw.png
gringo wrote: | que los ssd tienen menos vida que un disco común de toda la vida es cierto, pero es lo que decis vosotros, se suele jubilar el hardware antes de que se llegue a su final de vida util.
a modo de ejemplo : yo tengo en mi portátil un ssd intel 320 y según el intel ssd toolbox este, si sigo con mi ritmo de uso habitual tengo disco para unos 13/14 años.
saluetes |
bueno el ssd lo uso en la partición de windows en la de linux uso uno raptor de menor espacio, ya quite de la firma el ssd en ese caso si seria esencial mi pregunta, y más usando gento, por el tema desgastes, que como decis supongo es más leyenda urbana que otra cosa pero supongo que si sera cierto que van desgastandose , aunque con tecnologias como TRIM etc pues no se yo si han que andar con tanto miramiento.
saludos, ad1 _________________ --so ~amd64 & openrc --cpu 7700 non-x --ram 2x16GB --gpu RX 470 |
|
Back to top |
|
|
cohone Tux's lil' helper
Joined: 27 Mar 2006 Posts: 113
|
Posted: Wed Oct 31, 2012 6:41 pm Post subject: |
|
|
Quote: | el df -hT practicamente no varia nada compilando, ¿el directorio /run ese donde anda? o es el /var/tmp/portage/xxx/xxxx/work.... ...no entiendo la dif entre tmpfs y shm y porque estan montados con identico espacio a la vez... a ver si a parte del foro encuentro algo por www que me saque de dudas.
|
A ver, que parece que esto se nos va de las manos, jeje
Cuando montas un sistema de ficheros de tipo tmpfs, lo que hace es simular en memoria ram una partición de un disco (no me sale cómo explicarlo de otra forma)
El directorio /run, está físicamente en la memoria ram, y coincide en tamaño con el shm, porque, si no le especificas un tamaño con la opción size, te va utilizar toda la memoria ram que tengas disponible en ese momento, que no se reserva, sino que va disminuyendo a medida que se hace un uso real (cuando copias un fichero a /run el tamaño libre disminuirá en ambos tmpfs, en el /run y en el /dev/shm)
La diferencia ente shm y tmpfs en /etc/fstab (el primer argumento) es meramente testimonial, es un argumento que en el caso de los tmpfs no tiene uso, salvo "dar un nombre", puedes poner lo que quieras (o eso creo), solo que como /run y /dev/shm son dos puntos de montajes 'conocidos' en linux, se les nombra así, no se porqué...
Conviene saber que todo lo que guardes en un tmpfs, desaparece cuando se desmonta la partición o reinicias el pc y es irrecuperable (lo comento por si acaso)
Quote: | Y pare ser que usa el /var/tmp/portage para compilar eso indica claremente que esta usanro la ram entonces, ¿no? sin tener que configurar el tmpfs en el /etc/fstab |
No, si no tienes un punto de montaje en fstab y no has montado a mano nada en ese directorio, te está usando el dispositivo donde tengas instalado el /, para saber si se uda tmpfs, en el comando df, aparecerá algo así:
Code: | temporal 4,2G 0 4,2G 0% /var/tmp/portage |
Saludos. |
|
Back to top |
|
|
papu l33t
Joined: 25 Jan 2008 Posts: 729 Location: Sota algun pi o alzina...
|
Posted: Wed Oct 31, 2012 11:47 pm Post subject: |
|
|
entonces siempre se ha de montar el directorio tmpfs en uno que ya exista sino pues de poco sirve montar un tmfs digo yo :O
el contenido de /dev/shm y /run no es el mismo , entiendo ahora que son ambos dos tmpfs, supongo entonces que lo que no entiendo es la utilidad del directorio /run y /dev/shm. Mañana buscaré info por el google
saludos, ad1 _________________ --so ~amd64 & openrc --cpu 7700 non-x --ram 2x16GB --gpu RX 470 |
|
Back to top |
|
|
cohone Tux's lil' helper
Joined: 27 Mar 2006 Posts: 113
|
Posted: Thu Nov 01, 2012 9:06 am Post subject: |
|
|
papu wrote: | entonces siempre se ha de montar el directorio tmpfs en uno que ya exista sino pues de poco sirve montar un tmfs digo yo :O
el contenido de /dev/shm y /run no es el mismo , entiendo ahora que son ambos dos tmpfs, supongo entonces que lo que no entiendo es la utilidad del directorio /run y /dev/shm. Mañana buscaré info por el google
saludos, ad1 |
Es que no se puede montar nada en un directorio que no exista, salvo filesystems especiales, como el swap (que verás que el punto de montaje es none)
El contenido no es el mismo, claro, pero el espacio libre (ram) sí lo comparten y el primero que lo use se lo queda.
La diferencia es que están montados en dos directorios diferentes.
El uso de esos directorios ya te lo comenté, uno se usa en aplicaciones de inicio, porque originalmente estaba en /var/run y este directorio podría no estar montado y por lo tanto no accesible en el inicio temprano del sistema, y como solución se usó un tmpfs, ya que la ram está disponible siempre.
y el /dev/shm es para compartir memoria con la tarjeta gráfica, o eso tengo entendido
Saludos |
|
Back to top |
|
|
papu l33t
Joined: 25 Jan 2008 Posts: 729 Location: Sota algun pi o alzina...
|
Posted: Thu Nov 01, 2012 10:39 am Post subject: |
|
|
cohone wrote: | papu wrote: | entonces siempre se ha de montar el directorio tmpfs en uno que ya exista sino pues de poco sirve montar un tmfs digo yo :O
el contenido de /dev/shm y /run no es el mismo , entiendo ahora que son ambos dos tmpfs, supongo entonces que lo que no entiendo es la utilidad del directorio /run y /dev/shm. Mañana buscaré info por el google
saludos, ad1 |
Es que no se puede montar nada en un directorio que no exista, salvo filesystems especiales, como el swap (que verás que el punto de montaje es none)
El contenido no es el mismo, claro, pero el espacio libre (ram) sí lo comparten y el primero que lo use se lo queda.
La diferencia es que están montados en dos directorios diferentes.
El uso de esos directorios ya te lo comenté, uno se usa en aplicaciones de inicio, porque originalmente estaba en /var/run y este directorio podría no estar montado y por lo tanto no accesible en el inicio temprano del sistema, y como solución se usó un tmpfs, ya que la ram está disponible siempre.
y el /dev/shm es para compartir memoria con la tarjeta gráfica, o eso tengo entendido
Saludos |
si lógicamente ha de montarse algo que existe pero como la ram siempre existe xD me referia a que ha de ser un directorio que el sistema use para algo y lo detecte , como e/tmp o en este caso en gentoo el /var/tmp/ que es el que tiene el por defecto para las compilaciones. Si ya lei algo del /run que es para lo que dices y que lo cambiaron hace poco.
Hablando del none desconozco para que sirve voy a buscar info esto de linux no se acaba nunca aprendes una cosa y te das cuenta desconoces cinco más, cada vez jaja
saludos, ad1 _________________ --so ~amd64 & openrc --cpu 7700 non-x --ram 2x16GB --gpu RX 470 |
|
Back to top |
|
|
SS3 n00b
Joined: 23 Oct 2010 Posts: 20
|
Posted: Tue Dec 04, 2012 2:11 am Post subject: |
|
|
Hay varias formas, yo añado PORTAGE_TMPDIR="/dev/shm" en make.conf y listo. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|