Ayuda en Opensolaris 10

Iniciado por amonra727, 4 Julio 2011, 05:05 AM

0 Miembros y 1 Visitante están viendo este tema.

amonra727

Saludos, he creado un script en opensolaris para estresar el cpu y la memoria. Ahora bien necesito entonar la maquina para lograr desetresar el cpu y la memoria mientras el script sigue corriendo. He intentado hacerlo por projects y task y de verdad no he podido hacer la entonacion. Alguno de ustedes me puede ayudar en esto?? Gracias
Ra
Programador NT
Web 2.0
Ingeniería Informática

Foxy Rider

Hola! primero quiero arrancar el mensaje con un Bienvenido !

Segundo y como nota aparte, el mensaje en realidad no corresponde acá, correspondería a una sección llamada "unix/*nix general", pero estamos viendo con el admin si pueden hacerse las refacciones debidas para que haya más agnosticidad para otros S.O's basados en POSIX (y podamos promover temas de estos S.O's, me encantaría !), mientras el tema, se queda acá.

Tercero y ahora sí, vamos a lo que nos corresponde ... podrías postear el script para ver qué tipo de carga es ? también estaría bueno saber del hardware donde va a correr, por que como toda optimización, hay que ver qué tipo de "presión" hace ese script es para empezar a ver formas de alivianarla (y en base al hardware que tengas, obvio)

Como cuarto (y desviándonos, de nuevo !), te diría que utilices OpenIndiana o si te vá algo más privativo, Solaris 11 Express. (Me imagino que estarás usando Solaris 10, ya que el versionado de OpenSolaris es otro)
Ya que OpenSolaris como tal, fue cerrado por Oracle (empresa que compró a Sun) y lo convirtió en una cosa privativa a la que se le pueda explotar más dinero.
El último suspiro de código se conoce como el b147 (b de "build") y sobre eso, la comunidad tomó el código y lo continuó en otro proyecto aparte llamado Illumos.
Sobre Illumos se construye OpenIndiana, que es un derivado que busca ser lo que era OpenSolaris básicamente (y por ahora van perfecto !)

Por ahora muchas diferencias no hay entre Solaris 11 y OpenIndiana, ya que Oracle descaradamente también tomó ese último suspiro de código, le agregó dos cosas  (como cifrado a zfs) y llamó a eso Solaris 11

Tú decides.

Saludos.

amonra727

Saludos, gracias por su respuesta. Bien te comento que tengo 2 scripts con uno trataba de estresar la memoria y con el otro el CPU. Los scripts son los siguientes

Script 1
#!/bin/bash
let count=0
while :
do
echo "Count is: $count"
((count++))
done

Script 2
#!/sbin/sh
      Aux=1
     b2=0
     b1=1
     y=100
     i=1
while [ 1 -eq 1 ]
do
     if [ $i = 100 ]
        then
      Aux=1
     b2=0
     b1=1
     y=100
     i=1
       fi 
     Aux=$b2
     b3=`expr $b1 + $b2`   
     echo "$b1,$b3";
     b2=`expr $b1 + $b2`
     b1=$Aux
     i=`expr $i + 1`
done

Tratare de buscar el solaris 11 express
Las caracteristicas de Hardaware son:
Procesador Intel Core 2 Duo 2,2 GHZ
Memoria Ram 3gb
Disco Duro 320gb
Es una Portatil HP. A su vez debo decirles que el opensolaris lo tengo montado en una maquina virtual.

De verdad que lo he intentado pero no doy con el problema. Gracias de antemano
Ra
Programador NT
Web 2.0
Ingeniería Informática

Foxy Rider

#3
Pero ambas cosas son inoptimizables en cualquier sistema, no tienen sentido... sólo son dos script que revientan la cpu haciendo cálculos. (y encima, son feos en como están hechos, el segundo hace un int overflow en nada, y el primero eventualmente lo hace - hay un delay agregado por hacer output a la consola - )
O sea, básicamente sólo suman, no hay forma de "desestresar" la máquina optimizando, salvo que agregues un delay en esos cálculos

Saludos.

P.S: eso o no entendí a lo que te referías

amonra727

Saludos, entonces con que script podria estresarla para luego optimizarla?? Llevo tiempo haciendo esto y me suponia tu respuesta
Ra
Programador NT
Web 2.0
Ingeniería Informática

Foxy Rider

#5
Lo coherente es optimizar cosas como servidores de base de datos, web, aplicaciones, software en general ....
dependiendo del caso, las optimizaciones son muy específicas, y estás queriendo optimizar por optimizar (necesitaría algo concreto)

Como consejos generales podría decir que veas desde el lado del I/O toqueteando valores de ZFS ( http://ur1.ca/4n1t2 & http://ur1.ca/4n1t5 ), podés toquetear servicios ( http://ur1.ca/4n1tg ), usar dtrace ( http://ur1.ca/4n1u2 & http://ur1.ca/4n1tv & http://ur1.ca/4n1ub ) - teniendo en cuenta que si programás, trates de usar el IDE de sunstudio que es más *cómodo* para usar dtrace para hacer profiling-, uso de red mediante crossbow ( http://ur1.ca/4n1xs & http://ur1.ca/4n1x0 ) y también los tuneables del sistema (estos te quedan de tarea pero con una pista ;) : /etc/system   )

y como "relacionado" agrego esto : http://ur1.ca/4n1z2

Esos son parámetros generales para optimizar una aplicación, en general, las optimizaciones son muy específicas a una aplicación y no veo que apuntes a algo concreto, supongo que lo de arriba te va a dar herramientas generales para ir tackleando la optimización de una app., algunas ya son muy usadas y conocidas, y ya tienen sitios que explican como optimizarlas según el tipo de carga que generen ( acá hay un par de ejemplos : http://ur1.ca/4n1zl )

Cualquier duda consulte nomás =D

Saludos.

amonra727

Saludos, ya esta listo, logre hacerlo utilizando el primer script. Lo que hice fue decirle al virtual box que le asignara a opensolaris10 2 procesadores. Ahora bien una vez que corria el script notaba que el CPU1 llegaba al 98% de su uso sin descender. Mientras el script corria tome su PID, lo asigne a un Project y luego asigne ese Project a el CPU2(bueno en realidad es del 0 al 1) una vez echo esto la entonacion estuvo completada. Esto era simplemente para demostrar como trabaja una maquina estresada con opensolaris10 y lograr desestresar la misma. En realidad este SO no me gusto al principio luego te acostumbras, pero no lo recomiendo.

Ahora bien, en cuanto a la memoria utilice un script que cree, el cual ejecuta el navegador firefox con un ciclo infinito, esto hace que la memoria se sature.

Aun estoy trabajando en la ultima entonacion pero voy bastante bien. En lo que la tenga les comento.
Ra
Programador NT
Web 2.0
Ingeniería Informática

Foxy Rider

#7
Ahhh, pero eso no es optimizar, si andás usando projects es por que parece que estás interesado en establecer límites en cuanto a recursos !

Revisá esto entonces:
http://www.princeton.edu/~unix/Solaris/troubleshoot/resmgmt.html
http://prefetch.net/blog/index.php/2006/11/14/capping-a-solaris-processes-memory/

Con eso podés establecer límites de memoria.

Saludos.

P.S: Pensé que apuntaba para otro lado  ... Léase: analizar el tipo de carga y consumo para "gastar menos" y que una carga fluya mejor ... no ponerle un tope de consumo (son dos cosas distintas)
Perdón por las vueltas, sinceramente no entendía qué querías hacer y estaba "asumiendo" otra cosa totalmente distinta (y mandé fruta), de nuevo perdón !