[ot] procesador para servidor

felix perez felix.listaphp en gmail.com
Vie Mayo 12 01:14:47 CLT 2006


2006/5/11, Rodrigo Fuentealba <darkprox en gmail.com>:
> felix perez wrote:
> [...]
> >> Debian sarge instalado desde cero, sin entorno grafico, robusto y
> >> estable.
> >> Ubuntu server (basado en Debian) tambien sin entorno, muy similar a
> >> Debian.
> Me da lo mismo, prefiero Slackware... Mi respuesta en este caso se basa
> en el soporte que el kernel da. Tampoco tengo ninguna intención de armar
> una nueva guerra santa, sobretodo sobre algo que es OT

De ninguna manera, me gusta preguntar y aprender.

> >> >
> >> > Ahora, mi recomendación es la siguiente: Si utilizas bases de
> >> datos, la
> >> > información debe mantenerse guardada de manera precisa, pero si
> >> utilizas un
> >> > servidor web, no importa cómo esté la información en el disco, son
> >> sólo
> >> > archivos secuenciales que se interpretan en el caso de PHP y se
> >> envían por
> >> > el cable, ordenados.
> >> Esto no tiene sentido, las bases de datos todas deben "guardarse" de
> >> manera precisa al igual que cualquier archivo almacenado en un
> >> servidor.  Un servidor web procesa archivos en texto plano (html,
> >> javascript, php, etc) eso es lo que procesa si el archivo tiene algun
> >> problema no se procesa correctamente y la aplicación se cae.
> A ver... vamos por punto para aclarar mejor:
>
> - Para guardar datos, no hay gracia: los estándares están para que todos
> los datos se guarden igual, a la velocidad que permita el cablecito de
> 40-1 conectado al disco IDE (o el de SCSI, SATA, USB, Firewire, etc...).
>
> - Un servidor web procesa archivos de texto plano, como el javascript y
> el html (salvo excepciones como PHP en las que se ejecuta un binario que
> redirige la salida a la salida de Apache), que más encima son
> secuenciales (vuelvo a repetir: salvo en el caso de PHP que hace un
> índice de las clases, y no importa el orden en que éstas se definen) y
> de sólo lectura para quien lo visita (y si fueran de escritura,
> pasaríamos hackeando sitios web, ¿no?). Por tanto, si son archivos
> planos, secuenciales y de sólo lectura, no me interesa la concurrencia,
> me interesa hacerles un sólo proceso: enviar por el cable.
>
> Aún cuando sí se hagan operaciones sobre archivos de texto plano, éstas
> casi nunca son operaciones matemáticas, sino movimientos de información
> dentro de la memoria (cuando pones echo($_SESSION['valor']); lo único
> que hace el PHP internamente es copiar el valor de $_SESSION['valor']
> dentro de la salida que mostrará) y las que sí lo son, son comparaciones
> (nada más fácil para un procesador que utilizar un campo booleano
> conforme se verifica cada uno de los bits que comprenden las dos
> variables que comparamos: el caso de preg_match(), por ejemplo), y muy
> pocas operaciones de coma flotante.
>
> En el caso de las bases de datos, esto cambia: Primero, existe un
> esquema de perfiles reales, y no construidos como los de las páginas
> web. Segundo, los archivos no son secuenciales, de sólo lectura para
> todos los usuarios externos, sino que son archivos de lectura y
> escritura, para los usuarios que tengan permiso para leer y escribir. En
> este caso, las operaciones de movimiento de información son más, pero
> también lo son, con mucho, las operaciones matemáticas de comparación,
> validación, producto cruzado, en el que si quieres optimizar, debes
> aprovechar al 100% la coma flotante. Aquí, más que la rapidez está la
> precisión del control de concurrencia, el manejo de la memoria no para
> entregar datos, sino para hacer pequeñas operaciones de coma flotante
> entre ellos.
> > nota: javascript es del lado del cliente.
> Y HTML también, y nadie te ha dicho nada.
Quise precisar.
> >> > Para las bases de datos (sobretodo con Oracle y PostgreSQL) siempre es
> >> > recomendable un Intel por sobre un AMD pues si bien no es más
> >> rápido, sí es
> >> > más preciso. Para los servidores web, la información no debe ser
> >> manejada de
> >> > manera tan precisa, pero se requiere mover toneladas de
> >> información... para
> >> > eso un AMD es mejor.
> >> En que te basas para decir esto?
> Me baso en varios puntos, que para mí son demasiado coincidentes como
> para ser mentira.
>
> ¿Personas que trabajan con AutoCAD y Mechanical Desktop? Precisión: Intel.
> ¿...DIseño Web? Rapidez: AMD.
> ¿...MatLab? Precisión: Intel.
> ¿...Juegos? Rapidez: AMD.
> ¿...Edición de Vídeo? Precisión: Intel.
> ¿...Servidores Web? Rapidez:  AMD.
> ¿...Servidores de Bases de Datos? Precisión: Intel.
> ¿...Aplicaciones de Multimedia? Rapidez: AMD.
> ¿...Interfaces industriales críticas (Léase NI LabView y otros)?
> Precisión: Intel.
No se,  creo que esta es una apreciación mas bien personal de acuerdo
a tu experencia.  Si es asi conozoco una empresa de proyectos de
ingenieria, con autocad, mathlab y demases y ocupan solo AMD no me
atrevería a generalizar.
> >> > Ahora es tu decisión, yo no soy ningún experto tampoco :P
> >> Mayor razon para no hacer comentarios como el del parrafo anterior.
No eres experto y has dado una pequeña clase. :-)

> ¿Y a ti quién te hizo el ramo de Sistemas Operativos? ¿Y te aprobó?
No lo hice, llevo 20 años trabajando en esto :-)

> Bien... Pues debo decirte que el que sean clones no significa que
> implementan las mismas funciones de la misma forma,

Completamente de acuerdo, ejemplo 3dnow para AMD y mmx para intel.

> <?php function sumar($a,$b) { return ($a+$b); } ?> contra <?php function
> sumar($a,$b) { $c = $a + $b; return $c } ?>. Ambas funciones hacen lo
> mismo, pero de distinta forma. Aparte, los juegos de funciones
> específicas de AMD son para rapidez y los juegos de funciones
> específicas para Intel son para precisión. Basta ver que el Sempron
> Mobile 3000+ anda a 1800 y el Pentium 4 de 3.0 anda a 3 GHz, pero hacen
> lo mismo... ¿será porque AMD está retrasado en cuanto a crear
> procesadores de alta velocidad real, pero lo compensa con funciones
> reducidas que permiten que con menor velocidad se pueda hacer gran
> cantidad de movimientos de datos? ¿O es porque Intel es tan malo
> desarrollando algoritmos rápidos y óptimos, que aumenta las frecuencias
> de sus procesadores para tapar el que sean tan lentos?

Es probable, recuerda lo que paso con el prescott con socket 478?,
freias un huevo cuando se le aplicaba carga. Acabo de ver un P4 de 3,2
a 95 grados.

> >> Tanto Intel como AMD son opciones parejas (mayor performance en un
> >> amd),
> ¿Y después que me rebates todo lo que yo puse en el correo, afirmas lo
> que yo digo? Ohhh el borrachito porfiado este ohhh... :P Claro que Intel
> y AMD son opciones parejas, lo que uno tiene de rápido, el otro lo tiene
> de preciso (a nivel de funciones de procesador... si hablamos de MHz,
> los papeles se invierten e Intel es más rápido que AMD)

He visto muchos benchmarks en la red y todavia no veo un predominio de
intel sobre AMD en cuanto a velocidad, a nivel de funciones de
procesador debo confesar que no me manejo mucho con el tema.

> precisamente esa la razón por la cual hay que saber escoger con pinzas
> qué máquina destinar para qué cosa. Basta ver la ecuación
>
> lento + funciones de procesador optimizadas para rapidez = rápido +
> funciones de procesador optimizadas para precisión (sacrificando rapidez).
>
> Y comprobar que no es cierta pero que las diferencias entre ambos lados
> de la misma no pasan del 3% al 6%.
> >> pero debes considerar otras cosas, T madre, T red, discos duros,
> >> cantidad de Ram?, uso del servidor?, cantidad de usuarios?.
> La tarjeta madre también es importante, pero debo comunicarte que el
> chipset de ésta no es más que una extensión de las funciones del
> procesador, por lo que las reglas dictadas para los procesadores también
> se aplican a los chipsets.
>
> Pasando a risas, ¿las tarjetas de red no son estándares? ¿O sea que usas
> una marca para Intel y otra distinta para AMD? Tengo una tarjeta de red
> Realtek 8139C en mi Pentium 3 de oficina, y tengo el mismo modelo en el
> notebook que es un Sempron 3000+ Mobile... Bueno, es un notebook, no le
> puedo sacar la tarjeta para hacer las pruebas (ni es mi interés
> investigar cosas que se dan por sentado que son así).
No me refería a T de red para un procesador u otro, me refería a que
debes ver la velocidad de la tarjeta (10/100, 10/100/1000, etc), otro
punto es la marca y calidad de tarjetas, he visto algunas hasta sin
marca y creeme que las pones y la red se arrastra.
Tambien muy importante  es la calidad del tendido de cables, ruido
electrico, y otras interferencias.

>
> Hablando en serio: la cantidad y la calidad de la RAM son
> importantísimas... también su velocidad...
gran punto.
>
> Hablando de manera crítica: ¿volviste a considerar lo que puse arriba?
> ¿Un servidor se puede usar para bases de datos o para servidor web?
> ¿cierto que sí?... Entonces sí estaba considerando el uso del servidor
> (o te refieres a la carga que tendrá el servidor?
No son lo mismo pero una afecta a la otra.
> porque hasta donde yo
> sé, no son lo mismo). Sobre la cantidad de usuarios, pues ahí mi socio
> verá, pero nunca es malo considerar optimizar.

Como el cualquier área.

>
> Y como dijo Patrick Volkerding (Slackware maintainer),
>
> All the best, and don't forget to keep breathing.
>
> Rodrigo.
>



Más información sobre la lista de distribución PHP