administrators

Privado

Mensajes

  • RE: Banco de pruebas Hardlimit

    Ya está disponible la versión 4 de la central del banco de pruebas. Se trata del mayor cambio desde que su estreno.

    El tema ha sido mucho más extenso y complejo de lo planificado inicialmente, aunque el resultado ha merecido la pena totalmente. Todavía hay bastante flecos que cortar pero son ya cuestiones menores.

    Tened en cuenta que aunque todo parezca similar a lo que había, internamente todo es nuevo. Eso quiere decir que, a diferencia de la antigua versión que era muy madura, esta está muy poco probada y puede haber fallos donde antes no los había.

    Entre ChatGPT y yo hemos estado intentando generar páginas en tiempo real, pero no hemos sido capaces. Finalmente ha sido necesario crear una "pequeña" tabla con precálculos ya que la generación en tiempo real daba tiempos de espera de varios segundos. Es una gran mejora con respecto a lo que había, pero el resultado quedaba fuera de una escala de tiempo aceptable sin la caché. Sobre esto, estos cálculos son lo suficientemente rápidos como para hacerlos en el tiempo de validación, donde la velocidad de carga no es tan crítica, por lo que ya no se ejecuta ningún script periódicamente sino que cada vez que alguien sube un nuevo resultado, todo se actualiza en ese momento.

    La idea inicial era sólo migrarlo todo a MariaDB, eliminar todo lo relacionado con el antiguo SGBD y separarlo todo en tres partes diferenciadas: los datos, el back-end y el front-end. Antes estaban un poco mezclados. Lo que viene siendo una mera refactorización, pero por el camino se han producido cambios funcionales, principalmente porque la reimplementación ha invitado a hacer mejoras y correcciones que estaban pendientes. Son estas:

    • En general:
      · Se han corregido pequeños fallos latentes y se han añadido pequeñas mejoras que eran difíciles de conseguir con la anterior versión.
      · Se ha modificado la metodología para mostrar varios idiomas.
      · Ahora los nombres de los sockets muestran el nombre comercial (cuando existe) además del factor de forma y el número de pines.
      · No se muestra la marca de en los modelos de procesador ya que mayoritariamente hay sólo 2 y todos sabemos quién fabrica cada serie/modelo.
      · Se han hecho importantes mejoras en la seguridad.
      · Se han eliminado una gran cantidad de inconsistencias en cosas como los nombres de socket, tipos de memoria o arquitecturas entre otros repartidas entre cpus, placas base y demás.

    • En la ficha de procesadores (cpu.php):
      · Porcentajes más claros en las comparativas por test.
      · Se ha hecho una pequeña modificación en la metodología para determinar modelos similares (este algoritmo recibirá un cambio mayor próximamente).
      · Ahora se muestra una descripción junto a unidades en ambos ejes de las gráficas.
      · Las gráficas ahora muestran el desvío de rendimiento en por unidad en vez de en porcentaje.
      · Se ha solucionado un fallo que impedía renderizar la página con procesadores monohilo.

    • En las listas de últimas validaciones, ahora, en vez de mostrar el mensaje "Procesando resultado" en el último hardware validado:
      · cuando el modelo de CPU no está disponible, se muestra información en crudo proveniente de la identificación del dispositivo.
      · si se trata de una placa base, memoria u ordenador que no está disponible, no se muestra en la lista.
      · en la lista de últimas memorias validadas, ahora se muestran todos los modelos de una sola validación (antes sólo se mostraba el primer slot con una memoria pinchada).

    • Las fichas de placas base (motherboard.php) y ordenadores (computer.php) se han unificado en un solo lugar: mobopc.php. Las antiguas páginas redireccionan (HTTP 301) a la nueva.

    • Han cambiado los criterios para identificar una memoria RAM: Ahora sólo se usa el número de parte ya que, a veces, el nombre del fabricante llega ofuscado y eso produce entradas duplicadas.

    • En la página de arquitecturas (arch.php):
      · Ya no se muestran los máximos y mínimos de las eficiencias ya que no tiene sentido mostrar extremos que podrían no ser representativos de la arquitectura (principalmente con los mínimos).
      · Ahora se muestran puntuaciones medias en cada test individualmente.
      · Alístate en la marina.
      · Para el cálculo de las estadísticas, se descartan todos los resultados que no provengan del modo máximo soportado por la arquitectura (lo cual deja fuera ciertos modelos con cores de bajo coste que no soportan el modo máximo de la arquitectura y modelos cuyos envíos no se han hecho en el modo máximo por la razón que sea).

    • En la lista de ordenadores por arquitectura, placas base por socket y RAM por tipo (x_list.php):
      · Antes se mostraba la lista dividida por fabricante/chipset/formarto. Ahora se muestra la lista sin división. Esto recibirá cambios en el futuro aunque todavía no tengo clara la clasificación ni el formato.

    • Sobre los intestinos de las validaciones, todo era código arcaico lo cual venía siendo código espagueti, sin tabular y sin comentar (me cago en mi yo del pasado). Aquí se ha rehecho casi todo desde cero porque la porquería que había no merecía la pena reusarla. Esto no ha sido divertido, para qué nos vamos a engañar:
      · El motor interno de validación ahora tiene cuatro etapas:
      1) Se recibe el resultado desde el programa a través de submit.php. Ahí se verifica la integridad de los datos.
      2) Se envía al usuario a la página de login.php. Aquí se elige si el resultado es registrado o anónimo.
      3) Se registra el resultado en register.php. Aquí se añade la información a la base de datos y ya se trata de una validación más.
      4) Se muestra el resultado desde result.php. Este mareo me ha dado hambre, una de calamares, por favor.

      · Resulados (result.php):
      * Se han añadido versiones de Windows faltantes y ahora se muestra también el nombre en clave de cada versión.
      * Se ha añadido huso horario a la fecha de la validación.
      * Se han eliminado los enlaces Markdown y vBulletin por limpieza de la página.
      * Ahora el tamaño de los módulos se muestra en GB en vez de MB.
      * La frecuencia de las memorias se muestra en MT/s en vez de MHz.
      * Las gráficas de rendimiento con respecto al tiempo ahora muestran puntuaciones en miles. También se muestra una etiqueta con descripción y unidades en cada eje.
      * Para hacer arroz con leche hace falta leche, arroz, canela, azúcar y cáscara de limón.
      * Ahora en el ranking del resultado, salen enlaces a todos los procesadores (antes sólo salía enlace a la validación en cuestión).
      * Ahora, en ese mismo ranking aparecen todos los resultados incluso con posiciones bajas (antes quedaba parte de la tabla en blanco).
      * Ahora se muestra la diferencia de puntuación entre la media de ese modelo y el resultado enviado junto a un porcentaje.

      · Firmas (signature.php):
      * Ahora las puntuaciones se muestran en miles.
      * La cantidad de memoria se muestra en GB en vez de MB.
      * El modelo de la placa base ahora proviene de la base de datos de modelos en vez del identificador del hardware, por lo que en bastantes casos, aparecerá más limpio y con un nombre comercial más familiar.

    • La búsqueda ahora permite buscar, además de por puntuaciones como hasta ahora, por nombre de usuario, modo, color del lacasito, modelo y frecuencia medida.

    • Cosas que ya no están pero que volverán:
      · Las sugerencias de búsqueda no funciona por un conflicto con el nuevo sistema de selección de idioma. Esto se está estudiando.
      · Los rankings generales por modo y eficiencia (una página con bastante poco éxito y que hay que replantear).
      · El ranking de portada de los envíos más rápidos.
      · Gráficas en las comparativas de CPUs (esto seguramente no vuelva porque no tengo claro que sirva para algo).

    Estos cambios puede que sepan a poco para un cambio de versión mayor. Los cambios han servido para tener una plataforma mucho más fácil de mantener y ampliar. El hecho de que sea todo más fácil de cara al desarrollo y la administración, hace que aumenten mucho las probabilidades de que aparezcan nuevas funciones y la base de datos de componentes se actualice en periodos mucho más cortos. Eso ya es un gran paso con respecto a lo que teníamos, donde me daba una pereza enorme hacer cualquier cosa. Para eso ha servido: para que no me de pereza hacer cosas de ahora en adelante.

    Con esto, espero que las novedades del banco de pruebas vayan mucho más allá de simplemente haber añadido tal o cual hardware nuevo a la base de datos, dicho lo cual, se han añadido un buen número de piezas, aunque todavía quedan unas cuantas ya que he dejado esto abandonado más tiempo del normal y hay una buena cola.

    Como he dicho antes, aunque aparentemente sea prácticamente igual a lo que había, internamente es casi todo nuevo, así que probablemente haya multitud de pequeños fallos (espero que no haya nada gordo). Así que si veis algo raro o echáis algo en falta, no dudéis en decirlo.

  • RE: Información & anuncios

    La versión 4 del banco de pruebas se encuentra en fase "Release Candidate" (sólo web, el programa como ya dije, se dejará para más adelante). Si no pasa nada raro, se estrenará durante este fin de semana.

    En otro orden de cosas, se han empezado a traducir los subtítulos de Peertube. La política de traducción en estos momentos consiste en:

    • Si el video está en inglés, se traduce a español.
    • Si está en un idioma diferente al inglés y que sea compatible con la cacharrería de traducción (la mayoría de idiomas mayoritarios occidentales, coreano, chino, japonés, árabe y persa), se traduce al inglés.

    Cuando las traducciones hayan avanzado y se haya evaluado mejor el consumo de recursos de esto (estoy teniendo graves problemas de rendimiento a los que les he encontrado un parche), se planteará traducirlo todo a español. La calidad de las traducciones está siendo bastante buena en general, condicionada principalmente por la calidad de la transcripción disponible y la habilidad del locutor de transmitir sus ideas. Es decir, no son perfectas, a veces se cometen errores con la jerga (en este aspecto, menos errores de los que esperaba) pero a un nivel mucho más que decente.

    Todo el tema de las traducciones, condicionará también las decisiones de adquisición de nuevo hardware en el futuro.

    Y sobre el hardware, la segunda fase (NAS) y tercera fase (servidor frontal) de actualización del hardware que estaba planificada, quedan en suspenso debido al aumento desbocado de precios, que es especialmente sangrante en discos duros mecánicos y memorias RAM.

  • RE: Duda sobre las prioridades en Linux

    He estado midiendo tiempos para hacer un cálculo aproximado de rendimientos. El simple hecho de que haya un proceso de ffmpeg consumiendo un solo hilo hace que pyhon vaya unas 20-30 veces más lento (lo que tardaría 3 segundos, tarda en torno a minuto y medio). Aquí veo casi totalmente claro que es un tema de ancho de banda de memoria y puede que de gestión de la caché de la CPU porque creo (no estoy seguro) que un hilo de ffmpeg usaría un solo canal de la memoria por lo que python tendría, como poco, el otro disponible. Así que para que el rendimiento caiga de esa forma, supongo que hay que culpar también a la caché.

    La verdad es que ni idea, nunca he puesto una máquina al límite de esta forma, pero al final la estrategia de pausar Python cuando haya otras cosas parece que es lo más razonable.

  • RE: Duda sobre las prioridades en Linux

    @pos_yo Pues lo había pensado tanto para ffmpeg como para la IA. Aunque sea pequeña, lo mismo algo hace. Pero estoy ocupado al 100% (a ver si este finde puedo publicar la versión 4 del banco de pruebas y paso a lo siguiente) por lo que no he podido probar.

    Una cosa que sí me preocupa un poco de usar la GPU para codificar video es que hace bastantes años (no sé si el tema habrá cambiado), la GPU aceleraba pero la calidad de imagen era sustancialmente peor que hacerlo con CPU.

  • RE: Duda sobre las prioridades en Linux

    Esto está mal a varios niveles. Estoy viendo que cuando python se está ejecutando, todo lo demás va lentísimo y viceversa. Por ejemplo, si hay un proceso de ffmpeg consumiendo un solo núcleo, la velocidad de python (consumiendo 11 en vez de 12 núcleos) cae en picado. Igual pasa al revés.

    Sospecho que hay un cuello de botella importante con la memoria y esta no es precisamente lenta (6400MT/s 30-37-37-96 en dual channel). Pero es que el modelo de traducción se dedica a machacar 20GB de RAM, así que es normal que el equipo flaquee por ahí.

    Lo que voy a hacer es hacer que python se pause automáticamente cuando vea que hay algún proceso de ffmpeg o whisper en marcha. Creo que es la forma más eficiente de hacerlo todo y de sacarle todo el jugo a la CPU.

    Lo de las prioridades lo voy a olvidar ya que parece que el tema no va por ahí, aunque tengo curiosidad sobre por qué no hace caso.

  • Duda sobre las prioridades en Linux

    Buenas.

    Estoy haciendo cosas con el Ryzen 9 9900X (12 núcleos con SMT desactivado) y quiero priorizar procesos. He estado leyendo sobre el concepto de niceness en Linux que traducido como amabilidad, es bastante intuitivo (cuando más amable es el proceso, más deja pasar a los demás y cuando más incívico y maleducado, se cuela todo lo que puede). Tiene un valor de -20 (más prioritario) a 19 (menos prioritario). Nice lo he usado en el pasado y nunca he tenido problemas, pero al ver el comportamiento que veo ahora, he tenido que documentarme un poco. Aunque no encuentro una solución al tema.

    En esta máquina se ejecutan tres tipos de procesos:

    • ffpmeg que está configurado para acaparar un hilo de ejecución con un niceness de 19.
    • whisper que está configurado para consumir 4 hilos con un niceness de 0.
    • python que está configurado para consumir todos los hilos disponibles con un niceness de 19.

    Esos valores de prioridad no son casuales: ffmpeg funciona muy rápido con esta CPU, por lo que no me importa que pueda consumir muy pocos recursos. whisper es bastante más demandante y quiero que consuma siempre todo lo que haya disponible. Y Python es muy demandante, pero sencillamente quiero que consuma lo que les sobra a los demás, compartiendo lo que sobre con ffmpeg.

    Esta es una caputura de top:

    top del pepino

    Cuando también hay un proceso de ffmpeg y la CPU está ocupada, consume muy poca CPU (menos del 30%), que es lo que quiero que haga. Pero como veis en la imagen, python está consumiendo prácticamente 6 núcleos mientras que cada proceso de whisper no llega a 2. Y las prioridades, como se puede ver, están correctamente configuradas.

    ¿Por qué sucede esto y cómo lo podría solucionar?

    Gracias.

  • RE: Tarjeta gráfica para Lenovo E50-00

    @vreyes1981 Te bifurco el hilo a uno nuevo.

  • Resumen semana del 10 de noviembre de 2025

    Diseño modular para SSD

    Samsung ha presentado un nuevo diseño modular para unidades SSD en el que se puede separar la controladora de la memoria flash. Según la compañía, de esta forma se mejora la disipación de calor y la reparabilidad de la unidad.

    Servidor en bombilla inteligente

    Alguien ha conseguido instalar un servidor de Minecraft en una bombilla inteligente. El dispositivo va motorizado por un procesador RISC-V a 192MHz y 276kB de RAM.

    Firefox 145 disponible

    Firefox 145 viene con mejoras en la privacidad respecto al seguimiento de usuarios, soporte para los principales códecs de video y audio en el contenedor Matroska y con el fin del soporte para sistema de 32 bits en Linux.

    Nuevo hardware de Valve

    La maquinaria de marketing de Valve ha estado echando humo las últimas horas anunciando cuatro nuevas piezas de hardware: una Steam Machine (basada en un Zen 4), unos cascos de realidad virtual basados en ARM y funcionando con Linux, un nuevo mando y unas pinceladas de lo que será la Steam Deck 2.

  • RE: Información & anuncios

    Ya se ha migrado la base de datos del banco de pruebas a MariaDB y se ha reimplementado la página de placas base (motherboard.php). Ya solo queda todo lo demás (otras 10 páginas). Estoy pudiéndole dedicar mucho menos tiempo del previsto inicialmente, pero la inestimable ayuda de ChatGPT ha acelerado el proceso en torno a un orden de magnitud. Con un poco de suerte, espero poder dejarlo todo listo (o casi) esta semana porque algunas de las cosas más complejas ya se han dejado hechas.

    Dicho eso, es improbable que se añadan nuevas CPUs ni se actualicen placas base y memorias a partir de ahora y hasta que la nueva versión entre en producción.

    En otro orden de cosas, ha comenzado la temporada de recodificación de la instancia de Peertube. Esto creo que no lo he anunciado antes pero si lo he comentado con alguien en privado (no recuerdo quién). Total, que por cuestiones de eficiencia energética, durante parte de la primavera, el verano y parte del otoño, no se recodifican los directos. Esto se hace durante los meses fríos porque uso el calor de las máquinas como calefacción del piso (aunque parezca coña, el ahorro es mucho más importante de lo que uno pudiera imaginar). Esta temporada, además, se va a hacer la transcripción de todos los vídeos pendientes (varios miles) y en cuestión de unos días, empezará el proceso de traducción de los subtítulos. Aquí, el nuevo Ryzen 9 9900X va a poder sacar todo su músculo (y todos sus watios).

    A ver cómo se presenta esta semana...

  • RE: Museo Hardlimit

    Buenas @vreyes1981

    Es por la migración a la versión 3 del museo. La biblioteca estará fuera de servicio hasta que se migre a la nueva versión, con suerte, antes de Navidad donde, además, estarán disponibles los discos de la Micromanía que me enviaste.

Lista de Miembros