Copenhagen University College of Engineering
Outside the United States
Proposed Consent Agreement In the Matter of Intel Corporation, a corporation, FTC Docket No. 9341
I was contacted by the FTC on January 14, 2010, and asked to testify in court based on my published research findings regarding Intel's compilers and function libraries. Since then, I have intensified my research in this area in order to provide as thorough a testimony as possible. I have discussed various technical issues with FTC staff and provided a copy of my correspondence with Intel on the compiler and library issue to them. I have published a comment to the settlement on my blog at http://www.agner.org/optimize/blog/read.php?i=112#112 In collaboration with others, I have searched for commonly available software products whose performance depends on the vendor string and model number that can be read from the CPU that the software is running on. It turns out that the most popular mathematical software packages, such as Mathematica, Mathcad and Matlab are particularly affected. These software products run faster in certain situations on a VIA processor when the vendor string is artificially changed to "GenuineIntel". I have verified that Mathematica and Mathcad are using Intel's Math Kernel Library (MKL), but they do not appear to be compiled with an Intel compiler. I have not yet finished the investigation of Matlab and other math programs. It appears from my preliminary research findings that Intel's function libraries are more important than Intel's compilers in terms of inducing artificial performance impairment in end user software products. It is therefore unfortunate that the proposed decision and order is ambiguous in its wording about to what extent it applies to function libraries. In particular, section VII B and VII C are quite ambiguous as to whether they apply to compilers only or also to function libraries. Section VII should be rewritten to make it clear that all clauses apply to both compilers and libraries. I have noticed that the settlement between AMD and Intel is more farreaching than the FTC settlement in this respect. The AMD settlement requires that Intel remove any artificial performance impairment from their software products, while the FTC settlement only requires that Intel inform their customers about such performance impairment. As noted on my blog ( http://www.agner.org/optimize/blog/read.php?i=49#107 ), the latest beta version of the Intel MKL still has artificial performance impairment despite the settlement with AMD. The market situation for mathematical software is worth a few comments since this kind of software appears to be particularly affected. The majority of users of advanced mathematical software are college and university students who pay a reduced price or get the software for free. It can therefore be difficult for producers of mathematical software to get sufficient returns to cover the very high development costs. These development costs can be reduced by relying on third party function libraries. Some of the best optimized mathematical function libraries are provided by Intel. The development costs of Intel's compilers and function libraries are probably much higher than the direct returns. These losses are perhaps compensated for by the indirect effect of increasing the performance of end user software on Intel CPUs relative to competing brands of CPUs. This market strategy harms end users with non-Intel CPUs in their computers.