in

Intel deberá proveer un nuevo compilador

Las acciones que llevó a cabo Intel en su intento por erradicar la presencia de la competencia en el mercado parecen haber llegado a límites extremos. Ya conocemos la enorme cantidad de dinero que debió pagar en concepto de multa a la Unión Europea, y todavía están frescos en nuestras mentes los 1250 millones de dólares que debió abonar a AMD para quitarse presión legal de encima y llegar a un acuerdo por fuera de la corte. Sin embargo, esto no termina allí. En una nueva instancia de investigación, la Comisión Federal de Comercio le solicita a Intel que reemplace su "compilador defectuoso", sobre el cual se ha comprobado que se ejecuta con niveles de optimización reducidos cuando detecta la presencia de un procesador que no es de Intel.

¿Hay acaso un límite para la definición de la palabra "codicia"? Después de leer noticias como estas, es inevitable pensar que no lo hay. Intel fabrica muy buen hardware, eso nadie lo niega, pero algunas de sus actitudes para con sus competidores han sido en verdad preocupantes, y sólo recientemente han salido a la luz, después de duras acusaciones y millones de dólares pagados en concepto de daños. Sólo hay que hacer un poco de memoria: Intel debió pagar la increíble suma de 1060 millones de euros luego de que la Comisión Europea encontrara a la empresa culpable de prácticas monopólicas, al pagar grandes sumas de dinero a fabricantes para que favorecieran a sus procesadores por encima de los de AMD. Con ese terrible golpe recibido, Intel debió buscar rápidamente una solución a la mayoría de sus conflictos con AMD, y la maniobra, entre otras cosas, le costó a Intel 1250 millones de dólares. El frente de tormenta se estaba formando en territorio estadounidense, e Intel necesitaba cuanto antes una válvula de escape. El acuerdo con AMD está completo, pero todavía queda un detalle crítico por resolver.

Se trata del compilador de Intel. Entre los desarrolladores, todos concuerdan en que el compilador de Intel es lo mejor de lo mejor. Existen alternativas como el GNU GCC, pero los niveles de optimización del compilador de Intel son muy superiores. Esta última frase sólo se mantiene como verdad si el compilador puede detectar correctamente que está trabajando sobre hardware proveniente de Intel. De lo contrario, el compilador se ejecuta utilizando optimizaciones reducidas y poco eficientes, afectando así el rendimiento del programa cuando es ejecutado en hardware que no sea de Intel. Muchos desarrolladores han utilizado de buena fe al compilador de Intel, y el que dicho compilador afecte de forma deliberada el rendimiento del software compilado para otros procesadores, es sin lugar a dudas una falta muy grave.

El acuerdo entre Intel y AMD debería resolver este punto específico, pero existen otros fabricantes de procesadores, como es el caso de VIA. Por esta razón, la Comisión Federal de Comercio, que investiga actualmente a Intel, le ha requerido a la empresa que reemplace su compilador denominado "defectuoso", por otro sin ninguna limitación, completamente libre de costo para las partes afectadas. Si el compilador modificado ha estado expuesto a los desarrolladores durante tanto tiempo, entonces cada medición de rendimiento, desde el más simple benchmark, debería ser puesta en duda ya que los procesadores que no sean de Intel estarían siendo perjudicados a nivel código. Obviamente, no estamos en contra de las optimizaciones exclusivas, pero el solo imaginar la magnitud de la influencia que podría tener esto, hace que nos preguntemos, en primer lugar, qué tan rápido son nuestros procesadores en realidad, y en segundo lugar, qué hará Intel para salir bien parado de esta situación.

Reportar

¿Qué te pareció?

Escrito por Lisandro Pardo

25 Comments

Leave a Reply
  1. El problema es que el compilador de Intel genera varias versiones del código, algunas optimizadas con conjuntos de instrucciones como SSE, SSE2, MMX, etc., y otras versiones sin optimizar. Si compila para un procesador Intel, utiliza el código optimizado, pero si compila para otro procesador, le mete a propósito el código sin optimizar aunque el procesador lo soporte.

    Lo malo no es que no optimice para procesadores no Intel, sino que teniendo el código ya hecho, le meta a los otros procesadores código no optimizado a propósito.

  2. Mi total ignorancia me impide entender esto, ya que lo primero que pienso es que Intel no está haciendo nada MALO. Repito, seguramente pienso esto ya que no lo entiendo, ya que no puede ser que sea el único que piensa así y tenga la razón. Pero bueno, la unión europea seguramente debe priorizar a los consumidores, y no a la libre competencia y a la libertad de empresa.

    • OK, te explico: Tu hijo y el mío venden limonada en la esquina, pero yo vendo los limones y el azúcar, le doy los mejores ingredientes/publicidad a mi hijo y al tuyo limones "medio" dañados y azúcar con sal… Es o no algo malo?

  3. habra que volver a hacer comparaciones entre AMD y Intel una vez la tormenta haya pasado….. porque la verdad lo de intel ya es un timo…. con lo que cuestan sus procesadores,deberia ocuparse de mejorarlos…. cosas como estas dicen mucho a favor a favor de AMD, y tambien dicen bastante sobre Intel…. que si usa estas tecnicas, sera por algo.

  4. Me he enterado mejor de la noticia por la versión de mandrathrax que por haber leído el artículo entero. Triste, pero cierto. Debe ser que me estoy haciendo viejo y no retengo bien las frases muy largas.

    En cuanto al compilador, creo que si las optimizaciones para procesadores "no Intel" son tan malas, usando otro compilador -y los hay hasta gratuitos- se debería solucionar, y debería dejar al compilador de Intel a la altura del betún. Sin embargo, el compilador de Intel parece ser mejor.

    Con la porrada de millones en multas que llevan, podrían haber financiado un proyecto libre y demostrar si son -o no- la mejor opción.

    • Voy a serles sinceros, realmente no se si Intel tiene culpa o no…Es lógico que se comporte de manera mas óptima en procesadores de su gama, ¿Por que?, simplemente por que uno conoce de antemano su diseño y sabe como aprovechar tanto sus ventajas como sus desventajas, "Yo Intel" se que puntos debiles y fuertes tiene, y que me conviene hacer para que ande mejor el microcodigo generado, ahora con respecto a los otros procesadores, lo único que se es que tengo que cumplir para que ejecute en su procesador (interface) y solo eso…Bah, esto es lo creo al menos yo…

      • Jua, no hables bien de intel en neoteo ya que te van a llenar de negativos, jua. Vamos a terminar como martinsoft!!!! (pd. te puse un +1)

      • hablando, ni martinsoft ni max se dejan ver ultimamente, se habran ido de vacaciones juntos,jajaja!

        en todo caso visto asi parece una canallada de parte del amigo intel, no se conforman con nada.
        long life AMD!

  5. Concuerdo con Aivan.

    Pîenso que si bien es cierto es una practica bastante dañina para los competidores ya que no se benefician en absoluto, en realidad Intel no deberia preocuparse ya que podria alegar que simplemente ellos crean esta diferencia de optimizacion porque simplemente conocen su hardware. Imaginen si este codigo "optimizado" no es 100% compatible con el de VIA por sus limitaciones, diferencias, etc., a nivel de registros, entonces Intel seria atacado por provacar un codigo dañino para estos procesadores.

    En definitiva si quieren sacarle dinero que sea por una buena causa.

  6. Además de lo que comente, le sumo las opiniones de aivan y kniffe sobre la diferencia tecnológica de las distintas marcas. Internamente un intel no tiene nada que ver con un amd, que podamos correr aplicaciones en un amd no es porque sea 100% a un intel, y no solo es merito de amd, también de la empresa creadora del soft que tiene que preocuparse que ande en varios micros. Me acuerdo en los 90´, ni siquiera el mmx de amd era igual al de intel.

  7. Aivan, se esta hablando de codigo discriminante, no de código optimizado. El codigo generado identifica tu procesador y si es intel ejecuta un codigo distinto. Cuando deberia de ser para todos el mismo, que corra mejor en intel deberia ser porque el procesador es mejor y aprovecha las caracteristicas, no porque corra microcodigo exclusivo. Asi es obvio que por muy potente que sea el AMD siempre va a estar capado y el peor de los Intel funcionara mas óptimo.

    Yo, Intel, sé como tiene que ejecutarse para que valla bien y por eso solo lo optimizare si el procesador es intel y a los demas mierda.

    • Antes que nada agradezco a la gente que me advirtio, despues de leer la nota original me di cuenta de que tienes razon, aun asi….hay bastante fanatismo que nubla el juicio, estaría bueno que sean mas objetivos algunos y dejen ese sentimiento….

  8. Intel NO tiene la culpa, sus compilador está logicamente orientado para sus microprocesadores, no tiene por qué tener conocimiento de que instrucciones se ejecutan más rapido en los procesadores de otras marcas!

    Nadie impide a AMD o otras empresas hacer un compilador optimizado para sus cpus!

  9. es verdad intel no tiene la culpa, como es compilador de intel bastante han hecho para q funcione con los otros procesadores, obviamente tienen una version mas optimizada con sus procesadores por q conocen su arquitectura, amd debe hacer su propio compilador optimizado para su arquitectura, intel no tiene por q matarse desarrollando optimizaciones para otras companias es algo logico.

  10. Lo que hace Intel es una verguenza, sus prácticas sucias para atrassar a la competencia no debería ser aprobada por nadie. ¿Se imaginan a Intel solita?, sus CPUs costarían muchísimo más de lo que están ahora, si no fuera por AMD no tendríamos opción y pagaríamos lo que a Intel se le antoje. Si tenemos algo de ética, apoyemos a la competencia que también tiene cosas muy buenas, y no a Intel sucio por ser cochino en todo lo que hace, incluso la de meter dinero a los distribuidores para que no vendan AMD, al final, ese sobrecosto la pagan todos los que usan Intel, aún así dicen estar felices, ja!!!, que bestias!!.

  11. #13 Si tenemos algo de ética, deberíamos dejar de usar el monopolio WINTEL (estamos usando un procesador CISC diseñado en los años 80 con "mejoras" ) y empezar a comprar (y usar) computadoras con procesadores no-x86 (arm, mips, etc)

    • Buen día! en verdad elocuente la imagen, mejor hubiera sido un video demostrativo pero bueno, cambiando el user agent se hacen estragos en peacekeeper, por que no creer 😉

      Saludos!

  12. No puedo creer que Intel haya hecho tantas practicas anti-eticas!!!
    Es cierto que Intel deberia hacer compiladores que esten optimisados para desarrollarse en sus arquitecturas, pero eso de "detectar" cuando el sistema no esta basado en procesadores Intel….
    Sinceramente eso nos pone a pensar sobre cual sera la necesidad real de Intel por hacer esto cuando ya tenian una ventaja y muy favorable en el mercado, y lo unico que se me ocurre es que ellos bien saben que AMD esta empujando muy fuerte y que hasta los este superando en algunas series de procesadores.
    La verdad por eso siempre prefiero AMD, que es una empresa que siempre nos brinda a todos, sistemas muy potentes con una excelente relacion precio/rendimiento!!!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Ensayarán vacuna contra la leucemia

Los primeros descubrimientos de Kepler