Friday, October 02, 2009

Ali: Visiting the U.S. can be a harrowing experience

A news agency, reporting on the Olympic bid, included the following:

An uncomfortable moment for Chicago came when an IOC member from Pakistan, Syed Shahid Ali, noted that going through U.S. customs can be harrowing for foreigners.

The remark has been taken down before I could track its origin, but it is, I think, the explanation for Chicago's embarrassment.

I just blogged a few hours ago about this moment (here), I thought Obama clinched the nomination with his words of reassurance. But the fact remained that visiting the U.S., with the hurdles of going through and ever more byzantine and medieval process to get a visa, obnoxious and intrusive security checks at customs, measures such as not carrying liquids that are obviously mere security theater, and in general dealing with the ugliest arrogance which which this (otherwise) great country sometimes treats the rest of the world, turned into such a repulsive experience that the IOC Committee members would rather have the tourists be robbed at Rio de Janeiro.

Overkill -- "America at its best"

"America at its best": Those where the capital words by President Obama at Copenhagen.

The circumstances where one of the last questions from the members of the selective committee, just after a question about what would be the legacy of the Olympic Games in Chicago, that question was answered, and then Mr. Ali asked something along the lines that it is notorious that sometimes the United States treats harshly some visitors [ I understood that to encompass everything from visa paperwork months before a visit to the intrusive searches by customs and TSA officials, among others ] and that how are the authorities going to cope with an influx of millions of visitors. To that, there was an answer by one of the presenters to reassure Mr. Ali that the organizing committee already has the full cooperation of the agencies of the federal government involved, but Mr. Obama wanted to add something. Obama said that one of the things that he wants to make sure about the legacy of the Olympic Games in Chicago is for the world to see America at its best. He followed with a few remarks on the sense that Chicago looks like the world, that we have people from all over, and that will help them feel welcome; and that they will work to make sure the world gets to know that America at its best is open to the world and will make feel people welcome.

Then, an odd moment of silence ensued, the silence of people thinking right after great words have been said. And a round of applause for the President followed. Then the announcer said that there were no more questions.

I think the President "clinched" the deal right then and there, not just decisively, but overkill. The few minutes I watched made me thought that the people there had proved the proposition that the Olympic Games at Chicago will be more than great, they will be memorable.

At this point (3:15 am Chicago's time) I fail to even imagine how Rio de Janeiro would top that.

Monday, September 28, 2009

The Olympics bid

I was expecting Obama to make a "surprise" visit to Copenhagen the very last minute to help Chicago get the Olympics, but, although he is actually going the last minute, it won't be a surprise visit.

What is the significance? For one thing, since no other President of the U.S.A. has taken it so personal as to go plead to the IOC to get the Olympics, I would be very surprised if the IOC slights him making the visit a wasted effort.

Ever since I came to live in Chicago in 2003, I have been thinking that this great city has turned into something like "the greatest hidden city". What I mean by that is that most people think they know what Chicago is all about, and since the city has declined in worldwide influence, that the city is less interesting. While the influence decline is true, it has experienced a positive evolution; that's perhaps why I keep seeing that new visitors get a pleasant surprise.

Chicago has had the same chain of lake front parks it has ever had, and you can go to the same historic markers people went 50 or 60 years ago, but the visits are nicer today. It is not just Millenium Park, but other less specific things. A friend of mine came this summer, and I took him on a bicycle tour of the city, that in itself was a great novelty to him. He was absolutely impressed with what we saw and where we went; but I doubt a tour like ours could have been practical only 10 years ago, with much higher crime rates, fewer bike lanes, when the buses didn't have the racks, when you couldn't just go to a rent-a-bike and had to have your own. The very popular Segway tours didn't exist until 2004 or so, I think. While the view from the Sears (Willis) Tower is still the same, although it doesn't look as impressive today because while it was the tallest building in the world, today is merely the fifth; but it didn't have the all-glass balconies it has since this summer. Try stepping on clear glass 400 meters above the street level!. A friend from New York was marveled at how "new" the buildings look. I kept telling him that that was nonsense, because the buildings were even older than those in New York on average, but he insisted that he knows they are older, but they look newer. It helps that Chicago is depopulating very slowly, and the new work technologies require less physical presence, which means that the city is becoming less stressful (that is, the same world-class infrastructure is enjoyed by slightly fewer people). This may explain this new phenomenon in which affluent people who used to live in the suburbs is coming to live in the city proper; that provides for renovated neighborhoods with lots of fun things to do. There are other things as well, that make this a "hidden city". For example, 40+ years ago when African Americans where considered nothing short of second class citizens, they were making Jazz and Blues that still reverberate today, and the places where they did this were not touristic attractions back then. There is a very large collection of small factors that make visiting Chicago a much nicer place to visit today, consistently exceeding expectations.

But this city has always had many worldwide attractions. And for events such as Olympics, it is helpful that Chicago has lots of ethnic communities and not just the usual, many peoples from all over the world will feel at home here, much more than in Rio de Janeiro or Madrid.

I have the feeling that the time is not right for Madrid. If something can be objected of Chicago is that the USA has had many Olympics (LA 84 + 12y to Atlanta 96, + 20y tentatively to Chicago), but then if Madrid would be chosen, Europe would have three Olympics (Greece 2004, London 2012, Madrid 2016), almost consecutively, and Spain two Olympics within 24 years. That, I think, is the most important advantage of Rio de Janeiro, that the Olympics have never gone to South America. But I don't think Rio will get it. To begin with, violence and crime are very serious problems, and it remains to be seen whether Rio would really benefit from all the infrastructure that would be needed for the Olympics. Chicago, on the other hand, regardless of whether it wins the Olympics bid or not, has already begun to execute the urban plans for the areas where infrastructure for the Olympics would be built, getting the Olympics or not, Chicago already knows what to do with those areas. And for sure that after the games we can put to good use any infrastructure that would be built for the Olympics. Regarding existing infrastructure, it is true that Rio de Janeiro's is enough, but Chicago's is superb.

Some people in this city has been short sighted about the Olympics. They are right in that we certainly don't need to incur risks nor expenses to continue to make this city great, but like I said, today's Chicago is much better than what the people think it is, thus, nothing better than this opportunity for the city to be rediscovered. Coming back to my assertion that Chicago is the "greatest hidden city", ever since Obama was elected, I have been saying that he would help the city to be re-discovered. Among other things, he not just claims Chicago to be his home, but he is also the only unapologetic urbanite President in recent history, that is, he is a proud Chicagoan. I am sure the First Lady and the President will be a very effective one-two punch on behalf of the city, as you know, I met Barack Obama before he was famous, and even back then he was "charming", someone you would like to stop to talk to even if he is a total stranger and you are in a hurry, as it happened to me. And we talked precisely about the personality of Chicago, how this is a place like no other. From what our mutual neighbors who also know Mrs. Obama say, she is charming too.

About how Olympic bids are won or lost, I don't know of any back room negotiations and deals, not even whether they happen. But I am sure of something: The IOC is in the show business. They want to make sure that their show is going to get promotion. Now that the visit has been announced, the members of the IOC will have a chance to check for themselves the showmanship (i.e. "charm") of the people who would promote these Olympic Games, like I said, Mrs. and Mr. Obama Chicago are ideal for this. Then, it remains to be seen the level of committment, and by the mere virtue of the president taking a pause of his hectic schedule when his top political priorities are being debated to go plead for the city of Chicago represents a guarantee that he cares. Mayor Daley, has more than proved total commitment.

Disclaimer: I provide an informal service of "Bed and Breakfast" for work mates, I call myself "Chicagrafo" because I discovered my skills for photography here, and I am thinking about providing an informal guided tour service, not just the city as a whole, but featuring historic places such as Hyde Park, the University of Chicago, and the Obama's place, all within short walking distance from the place to stay!

Friday, September 11, 2009

Windows 32 bits, all versions: Max memory is 3GB

A friend of mine contacted me to ask me what is the maximum amount of memory that a 32 bit windows may handle. Because he knows that it should be 4GB, nevertheless, he has seen very many computers, especially laptops, that come with 3GB.

Regardless of which Windows of 32 bits you are using, whether XP, Vista, or Windows7, the limit is around 3GB. The reason is that the BIOS of the computer will reserve addressing for memory mapped I/O for the video card, PCI devices, etc. The reserved addresses depend on your devices, but it should be clear that a 512MB video card will take at the very least 512MB of addressing. When the operating system starts, it must respect the reserved addresses and if it is a 32 bit Windows, then it will be able to only address 4GB minus whatever the BIOS took. A 1GB video card will leave less than 3GB of addressing space to refer to RAM, typically, 2.8 GB.

Unbelievably, Microsoft keeps doing Operating Systems susceptible to these kind of problems. 20 years ago, it was the problem of Low, High, Extended and Expanded memory, exactly because of the addressing space that the BIOS reserved: The 80x86 in real mode have only 1MB of addressing space, of which the BIOS needs about 384K to map devices, so, the RAM memory addressable with the "real" mode is 640K. When the AT computers and their successors began to come with 1MB or more, one had to do very complicated DOS settings so that the DOS would map a memory window in the BIOS region to the memory above the 640K, and do the swapping. Alternatively, you could have a DOS extender that would run the application in "protected mode", using the full addressing capabilities of the processor, but that had to reset to "real" mode every time it had to use DOS. The problem is that DOS was absolutely tied to the "real" mode of addressing, a major design fault of Microsoft.

Nowadays, we have grown our memory usage 4096 times (12 bits in 20 years, or a year to year rate of 51% growth) and experience the same problem...

What should Microsoft do?
1) Port all of its device drivers to 64 bits. One of the contributors to Windows XP popularity is that, without XP being architecturally any superior to Windows 2000, it came with a very large catalog of device drivers and this greatly simplified the major hassle of hunting for the device driver and dealing with the installation complications. But today there are gazillion devices for which M$ made device drivers for, that don't have an updated version for x64.
2) It should create a virtualized sandbox to connect peripherals, especially USB peripherals, in which the user installs the old 32 bit drivers for the device and internally the operating system runs them in a virtual machine environment.
3) Put pressure on AMD and Intel to extend the AMD64 instruction set with a driver compatibility mode compatible with the driver model of old 32 bits. (Remember, AMD64 is binary compatible at the application level, but the device drivers and kernel modules need to be "long mode")

What should the customer do?
1) Cease and desist at using 32 bit Windows as host operating system
2) Try Linux 64 bit and virtualized 32 bit Windows
3) Put pressure for device manufacturers to provide x64 drivers

Wednesday, September 09, 2009

Do Corporations have the right of free speech?

Of course they don't.

As a matter of fact, they don't have any rights. It is their owners who have rights, so, I guess that as a proxy for the rights of the owners of corporations, many legal systems in the world confer to corporations privileges that are very similar to rights, and define the figure of a "legal person".

In the United States, it happened an amazing process that I have seen called as "Corporate Personhood", through which associations of people and money to make profits (corporations) progressively acquired rights given landmark Supreme Court decisions, especially after the Civil War and the reconstruction amendments that tried to extend the constitutional protections to the recently freed slaves.

The fact remains, naturally, that a corporation is not a free citizen, so, treating it as a citizen will cause problems.

Today the Supreme Court will decide whether the free speech constitutional guarantees apply to Corporations and other associations. I am particularly concerned about the possibility of the court finding that free speech protections apply to corporations even in the case of speech intended to influence elections and public policy.

It is not difficult to imagine that corporations, although inanimate entities, may have "opinions" and "political opinions". Remember what corporations are: associations bound by law to make as much profit as they can; therefore, they have interests to promote. The corporations also have the means to promote their interest; sometimes, they can even make their case appealing to the public; sometimes they can not, because their case is detrimental of the public, but they can just keep quiet about that. For example, a high-technology corporation may need highly-skilled labor from other countries, and has the means to promote all the benefits of such immigration while never even mentioning the negatives, that is, corporations may present their cases to the public to decide, that is, they may have opinions.

There are a gazillion things wrong with allowing corporations to promote political positions.

It is very bad already that money matters a great deal in modern politics of the United States. I should remind people that this country already tried the idea that wealth was an indicative of the capacity to self govern and decide public policy issues, many states had qualifications to vote that included ownership of properties or poll taxes that effectively excluded poor or non wealthy people from voting. But it was proven an evil so bad, that the 24th amendment to the United States Constitution was submitted to the States and ratified in 1964, and still, the problem persisted at the State level until the Supreme Court decided that poll taxes where in violation of the equal protection clause of the Fourteenth Amendment (that is, the whole 24th amendment was always a moot point, because all poll taxes, for Federal or State elections, at least according to the 6-3 vote of the U.S. Supreme Court in "Harper v. Virginia Board of Elections" were unconstitutional). As can be seen, the system has moved backward, wealth provides more and more influence at public elections; only that now it is not legally sanctioned but it happens in practice.

But, if corporations are granted freedom of political speech to influence elections, I am concerned not just about the evils of eroding the principle of "one person, one vote", with "one person, his dollar votes", but that the dollar votes themselves do not represent all the dollars evenly. I mean, someone who has made some fortune is arguably someone competent, and it is not very crazy to think that there really isn't a problem to grant more influence to those who have more dollars. But, as I will show, the dollar votes do not count equally every dollar. So, there is the risk that a few individuals may use their above average wealth to become even wealthier and thus even more politically influential. By the way, I haven't seen the following argument being mentioned, so, there is a chance that it is original of mine.

It is a consequence of the fact that every corporation over represents the interests of its controlling majority. Meaning that if I control 50+% of a corporation, and an adversary controls less, I can bias the activities of the corporation to consistently privilege my interests over the non-controlling owners. Since corporations are allowed by law to own other corporations, then, I can control, let's say, 51% of a small company "A" that itself owns 51% of a larger one, "B", which itself owns 51% of an even larger one "C", and then a "D". Ad infinitum. So, while I just own 6.25% of "D", I effectively control it, I have magnified the influence of my money by 16. With enough consolidation, I can exert massive influence on an economy. By the way, this scenario is not implausible. There have been periods of great "consolidation" among the corporations, and there have been people like J. P. Morgan who had an enormous economic influence, not just in the United States, but in the whole world, while never having a really big fortune (I just read in Wikipedia that his worth at the time of his death was equivalent in modern figures to $1.4 billion, which is rather puny compared to his worldwide influence). So, the process through which consolidation multiplies the power of some people is a very real phenomenon. Thus, I am worried about people not just leveraging their economic power, but also their political influence in the same measure.

Any Libertarian must be very concerned about the possibility of giving such mechanisms to the few owners of controlling interests of the mega corporations.

But these two are not all the evils from this very bad idea of granting freedom to influence elections to corporations. Others have explained them, so, I will just mention some in here:

What about the political freedom of employees? If a corporation exercises its "right" to influence elections, then, some employees must carry out that activity; but what if the political opinions of the employee are the opposite of what his work duties must further?

Corporations are bound by law to maximize profits, but the profits of corporations are not the only goal of a society, there may be others, such as protecting life (as in environmental protection, healthcare, etc). So, if a corporation may further its profiteering interests, by law it must do so. Let's say a municipal transportation company. Let's imagine that the municipality is discussing a transportation subsidy, and some voters want to go to a demonstration against. So, is the company authorized to deny service to the protesters, because it is bound by law to maximize profits and thus to minimize the threats of the subsidy not being passed?

From time to time the Supreme Court concludes awful mistakes and sets dreadful precedents that take decades to correct, there is reason for concern

Wednesday, April 22, 2009

And the Oracle conquered the Sun

One of the most commented news in the Java world these last days has been the Oracle acquisition of Sun, practically from under the nose of IBM. For some (me included) this came out of nowhere, but it was not a surprise.

We knew that Sun had to be bought eventually by some other giant. There were only four names that could be interested in acquiring Sun, in order of "importance": IBM, Oracle, Microsoft and Google. From these, Microsoft would never pass an anti-trust evaluation of the deal, and Google really doesn't need anything from Sun (owning Java and MySQL could be nice, but not needed).

This leaves only two major players: IBM and Oracle. Given the failed negotiation with IBM it was just a matter of time for Oracle to make the move. I just never expected it to be so soon.

Obviously people are asking "what now?", and the web is filled with speculations and analysis. So here is my take.

From my point of view, Oracle just made one of its best acquisitions of all time.

First of all, they have Solaris and ZFS (and the corresponding teams). Solaris is the OS where the Oracle RDBMS runs better, and ZFS is THE best filesystem to date. We can expect Oracle to take advantage of having the three development teams (RDBMS, Solaris and ZFS) working at the same place to make the RDBMS take full advantage of the Solaris/ZFS stack.

Combine a Solaris/ZFS-optimized RDBMS, the low-power/low-heat Blade servers and Sun storage offering, and you get a killer box for all database needs. All under the Oracle brand. This, by itself, is worth the $9.5 a share that Oracle paid, and positions it on par with IBM.

As a side note, the Solaris/Oracle on Sun servers is a quite common configuration, so Oracle is also expanding the offering to its existing customer base (meaning more money flowing in the Oracle direction).

Then, we have Java. A language, a platform, that is a monster by itself. No other platform beats its ubiquity (yes, not even Windows, if you count the smart phones).

Java is at the center of Oracle's middle-ware strategy. The possibility of IBM controlling Java may have been the trigger for Oracle to pick up the ball and buy Sun less than a month after the IBM-Sun deal was broken.

But, what Oracle did exactly bought regarding Java? The brand, surely. But does it really matter? Not much. Google is already distributing Java that is not Java in Android and Google Apps.

What else? A permanent seat on the JCP? That is also a nice thing to have, as it has veto power over the features of Java The Language. But Oracle itself has proposed that the JCP should be an "open independent vendor-neutral Standards Organization where all members participate on a level playing field", that "veto power" may disappear.

And the code is "free" as in both "beer" and "speech": all you need to do is go to the OpenJDK project, take the code, fork it, and you have your very own Java as long as it complies with the Java Language Specification and passes the TCK (the Java Technology Compatibility Kit).... wait...

Here comes the issue, why Oracle didn't want IBM to get complete control of Java: Sun controls the IP of Java, and only grants it to a third party implementation if it passes the TCK, which is freely available to everyone but will poison the license of any code that is tested under it to make it non-OSS friendly. Yes, this means that the resulting code cannot be released under Apache, GPL, LGPL, BSD or any other other OSI approved license. Also, a TCK code can only run on non-secluded PCs, ruling out servers, cellphones and PCs in booths and kiosks.

Do you want to make an implementation of Java, claim that it is Java compatible and distribute it? Pay Sun for the commercial use of the TCK. IBM and Oracle did this.

The latest Sun stunt on Java was to announce the release of the JDK 1.7 without a JSR (Java Specification Request), which means releasing a version of Java without a language specification or TCK, the two components necessary for an independent implementation, this effectively blocked all non-Sun Java implementations from upgrading to JDK 1.7. Who where the two most affected companies by this stunt? IBM and Oracle, the only two serious alternative JVM implementors.

So, what Oracle actually buys from Sun is the Java IP. They can now upgrade JRockit to the next Java version without needing a language spec or a TCK, and claim it is a Java compatible implementation, because now that they own the IP they can call a "Java compatible implementation" anything they feel like it.

This puts them in a very unique position: Either they stay true to what they wanted to do on December 2007, creating an external standard body for Java and giving the TCK for free and without ANY licensing burden, OR they can continue the Sun strategy and release the JDK 1.7 without a TCK, which could hurt IBM's middle-ware business.

As a final note, the lack of IP on a "Java" implementation, even if it does not claim to be Java (like Project Harmony) may not seem very important to us mortals. But it is critical to corporate lawyers. For a more detailed analysis of the Java IP, how it is acquired by third parties and how it may be a risk, please read these posts:

Tuesday, April 21, 2009

Welcome to Soronthar -- Our third contributor

I was having a conversation with one of my friends who is an excellent technology commentator about the Sun Microsystems acquisition by Oracle, and since he is extraordinarily knowledgeable about Java, I encouraged him to publish his very interesting insights about the triple interplay between Oracle, Sun and IBM around Java that perhaps drove the news we are commenting today. We should expect his article to appear soon.

His name is Soronthar, and he will become the third author contributing for this blog. Quite an impressive lineup.

AMD's report: "Flesh wound!"

The title refers to Monthy Python's "Holy Grail", of course. I mean that AMD is pretty much in a terminal process, and the story giving the rounds is that AMD beat the expectations by losing "just" 66 cents per share, or 1/5 of the share value lost in a quarter...

Now, I must sort of apologize. I called repeatedly the multi-year delay in providing details for the "Asset light/smart" strategy mere bullshit; because we all knew the terms of the license prevented AMD from not manufacturing the vast majority of their chips. It turns out that it can be argued that secrecy was necessary in preparation to actually break the license. This is sort of an example of the terminal desperation AMD is in.

It may get away with it, though. It is not clear to me whether Intel prefers a dead AMD or an AMD in torpor.

Again, investing in AMD is crazy, it doesn't matter how, because AMD is the football everyone is kicking around according to their non-public interests.

Farewell to Sun Microsystems

Some quick blogging about Sun and Oracle:

The first time I blogged here about Sun it was to criticize their lack of coherence: They had this market prong of Java which commoditizes the computing platform, and at the same time had the "boutique" Sparc hardware, along other things that I called a "multiple personality complex" trying to be open and proprietary at the same time. Nevertheless, Sun came a long way during these 3 1/2 years. They at Sun kept capitalizing on opportunities thanks to a practical approach: They deepened their AMD Opteron offerings, early in the cycle of Intel's Core architecture they began to also offer Intel without de-emphasizing their Sparc offerings. They kept opening their businesses, launched --finally!-- an Open Source version of Solaris, allowed Java to become ever more free, continued providing support to OpenOffice, gave the reins to "Mr. Open Source CEO" Jonathan Schwartz, acquired MySQL and VirtualBox. I was very optimistic about the end result of all of this, and wrote a blog about it which I recommend to the dear reader; in summary, all of this openness and reliance on Open Source enlarge a market for the products of Sun, and allows the participants in that market to move faster than the industry. This success was assured by the history of IBM's embracing of Linux and Sun's very Java; and although Sun was very late to that game, it still wasn't too late.

A little before the acquisition of MySQL I had already taken a small bullish position on Sun. My intention was to accumulate over a period of three years, with a lot of patience at the beginning acknowledging that the traditional businesses of Sun were in shambles, without any clear prospect of re-vitalizing them, but I wanted to get early due to my conviction about the results of the evolution that was (is) undergoing. The plan of selling covered calls wasn't losing although the price was declining, until the crash. This crash zapped my conviction on Sun because with a bad economy the prospects of a struggling boutique shop had to include bankruptcy, so, I didn't accumulate, but neither sold.

Then came the news of the IBM acquisition, that made little sense to me. At this point, I got tempted to sell, to perhaps buy back after the bubble bursted, until I heard that the Sun board had rejected the IBM offer. I reasoned that the board probably knew what they were doing, perhaps there could be a better option for Sun down the road, and decided to wait. Then, I got to know that IBM also thought it over, and as a financial journalist said, they were not willing to undergo the "financial proctological exam" of the regulatory agencies to approve the merger. By the time of the Oracle announcement, I thought I had screwed it again, losing my best chance to get rid of what I had of Sun; but that wasn't the mistake I made, I should have observed that the market itself had merged Oracle and Sun (almost all of my customers who run Oracle run it on top of Sun, anyway, the correlation is undeniable), and I should have remembered the Dvorak argument about Oracle killing MySQL using Sun as a proxy. Further examination about Sun's leadership at initiatives such as the computing grid are an strategical theater of operations that Oracle has been slow to position itself at. With Amazon.com's EC^2 (Elastic Computing Cloud) and all of those other cloud initiatives taking hold, Oracle needed something powerful to help them succeed at their belated entry in that space.

This acquisition makes a lot of sense to me. The financial journalists have already discussed the obvious reasons why Oracle has a relatively easy task of making this acquisition work; just the advantages to supply truly integrated platforms to customers is enough to justify this acquisition, but at deeper strategic reasons the acquisition makes even more sense.

The really interesting question, that I dare not forecast about, is what is going to happen with MySQL, Java, OpenOffice, and VirtualBox; depending on how you look at it, MySQL and VirtualBox either cannibalize pre-existing Oracle businesses, or represent entries into markets that Oracle is not strong at today, so, it's difficult to forecast in what direction would Oracle ultimately move. About Java, I don't see whether Oracle will treat it with indifference (dis-investment) or would try to steer it towards helping some strategic initiatives. About OpenOffice, I am curios to know if Oracle really wants to intensify the war against Microsoft's sacred cash cows. Open ZFS, Solaris and Solaris are clearly valuable assets that would continue to help Oracle given their orientation towards high end performance, the segment at which Oracle wants to remain as strong as ever. All of this lack of clarity prevents me from transferring my shares to Oracle, but furthermore, I think Oracle suffers from a condition that makes me abstain from taking bullish positions: Oracle does not operate in a market at which the common people will eventually become customers, but only a high-end that it is not clear to me that it will even continue to exist. This is like nVidia: Good company and all, they began doing 3D accelerators for a high end segment of the market that was bound to become mainstream in due time; and it became mainstream, and nVidia became a major player in the industry. But today, its market segment is shrinking to the very few people who require absurdly high computing capabilities, therefore it is very risky to get into bull-side.

Finally, this acquisition provided me with something to hunt for in the stock market: technology companies that are struggling and the market has merged its products to those of much stronger companies, mergers may be happening.

Saturday, March 14, 2009

A decade of only AMD for new processors is over


It has been a while since I posted an article, so, let me begin with some bits of news:

1) I am particularly busy on my day job, doing high performance mulithreaded software
2) I am evaluating Windows 7, of which I have bits and pieces for an article
3) I have studied nVidia's CUDA, of which I would be posting some articles too
4) After more than a decade in which all my new processors have been AMD, I switched to Intel, I bought a Nehalem, a Core i7 920.

This last item put me to think and deserves a nostalgia trip, here it is:

The last time I felt motivated to buy a new processor from Intel was a Celeron 300A, because, if you remember, this was Celeron in price but Pentium II in performance. Intel made the mistake of launching the original Celerons as processors that underperformed even the existing Pentium MMX of the day, but still requiring a much more expensive motherboard, so, they only made sense for people who wanted to eventually buy a Pentium II and were willing to put up for a while with a system slower than the old generation, although this wasn't a good plan because at the time to replace the processor, how would you get money from your spare Celeron?

The reason why the original Celerons were so bad, was that they didn't have any L2 cache. They were overperformed by Pentium MMX because they were, for all practical purposes, Pentium II inside and the Pentium motherboards had about 512 KB of cache (external to the processor), whereas the Pentium II (and Celeron) motherboards assumed the L2 cache was going to be in the processor and, because of the diminishing returns of a third cache level, did not have any cache at all. You may check these claims starting with the wikipedia entry:
http://en.wikipedia.org/wiki/Celeron

Then, Intel sort of over-killed the problem with the first line of Celeron processors with cache, because they were super performing, over-clocker kings at devalued Celeron prices.

Since there was a no-cache Celeron of 300 MHz (Covington architecture), and a Celeron with cache (Mendocino) of 300 MHz, its model was called Celeron 300A, with the "A" to differentiate among them.

It turns out that a Celeron 300A (66 MHz external bus) in some benchmarks (without overclocking!) was faster to the Pentium II 300 MHz (100 MHz external bus) because the Pentium II, although it had a 512KB L2 cache, it ran at half the speed of the processor, while the 128 KB L2 cache of the Celeron 300A was running full speed. The reason for this was that the L2 cache of Pentium IIs was off-chip, while the "Mendocino" Celeron cache was on-chip (by the way, this makes it the first massively produced processor with an on-chip L2 cache). It seems that the Mendocino architecture was a precursor for Intel's fully-on-die L2 cache Coppermine architecture (the Pentium III with 256 KB of L2 cache). If if you remember Coppermine trounced Katamai Pentium III that had double the L2 cache size precisely because their cache ran at full speed, so, the Celeron 300A versus Pentium II was about the same thing: L2 cache running at twice the speed, but 1/4 of the size.

I was saying that I feel it was a precursor to the Coppermine, because they all overclocked like crazy. And it was very easy to overclock them, you just forced the motherboard to use 100 MHz of bus frequency and the processor went from the specified 300 MHz to 450 MHz.

I gave that processor to a friend of mine, that I understand is still running it today, at 450 MHz.

Before that, I was very happy with my Pentium MMX 166 MHz, great processor; and at the time I didn't like none of the cheapos AMD K5, K6 and K6-II

I gave up about Celeron 300A because I bought an Athlon 550 MHz and got blown away by its performance and also its performance/price, which then was improved further by the impressive performance/price ratio of their "Duron" siblings; while Intel came out with the ragingly fast eunuch of the Pentium 4 that were routinely overperformed by properly configured Athlon. Although sometimes a Pentium 4 may have been faster, still, the price difference didn't justify it.

So, it was Athlon/Duron for everyhing, I bought a used laptop (with Intel processor, but this doesn't count because it wasn't a new processor), then I bought a mobile Sempron laptop because it was the best peformance/price ratio, then, when I wanted a new laptop, I took the hard decision of buying a Turion 64 over a Pentium M only because I wanted to move to 64 bits as soon as possible, as I have said before, the AMD64 (or Intel's EM64T) should help compilers to make the same programs run about 5% faster (things like the doubling of the architectural register file (from 8 registers to 16) should overcompensate the extra memory inefficiency).

Over the years, the performance and performance/price of AMD processors went ever higher and higher while Intel's were lower and lower, with the exception of the Pentium M series.

As we all know, Intel came back with the Core µ-architecture (Core 2 Duo) and demonstrated that plain ole P6 had a lot of life, but still, it wasn't convincing for me to switch. But further down the road it came Nehalem, and it was more than enough for me to switch, probably for a very long while.

The Core i7 920 priced at less than $300 is actually very cheap for what it is, but it forces you to pay premium prices on the motherboard (currently there is only one chipset for it, the X58 from Intel) and it forces you to buy DDR3 memory before their final price-wise commoditization, and these really hurt the performance/price ratio you can get from a Nehalem; but what really pushed me over is that although this is just a quadcore, it really feels like an octo-core. Nehalems have the feature of "Hyperthreading", that is, run two instruction streams per core. As far as I have seen, hyperthreading REALLY works on Nehalem.

If you remember, when Intel introduced Hyperthreading, it didn't work, people hated it, and Intel abandoned it for the subsequent µ-architectures until Nehalem. I will explain in a new article why it didn't work and why it now works, but there are still a few things I need to explain about Nehalem:

Intuitively, to feed all the data needed by 8 threads executing at full blast will require quite a lot of bandwidth and slow latencies, that's why I have been so skeptical even about Intel's current double-duals that only need to feed 4 threads. Also, I perceived the whole thing of FSB as a dead end and I wasn't going to grace Intel's technical mistakes with my money by acquiring a FSB-based motherboard. Just to illustrate the point, following the article at
http://www.techspot.com/article/131-intel-corei7-memory-performance/
you can see that a nominally 1333 MHz FSB (that runs at 333 MHz "quad pumping" (capable of 4 transfers per cycle) DDR2 memory) with a 64 bit (8 bytes) width, can only give 8 * 1333 E6 Bytes/sec, or 10.656 GB/sec, while DDR2-800 memory, in dual channel gives 2*8*800 E6 bytes per second, 12.8 GB/sec. Meaning that even the 1333 MHz FSB can't fully use a dual channel DDR2-800 configuration!. I am not really sure that I am right about this, but it seems to me that official pages such as
http://www.intel.com/Products/Desktop/Chipsets/G31/G31-overview.htm
that claim bandwidths over 10.656 GB/sec are a lie, at least I am not able to explain how a 64-bit wide FSB at 1333 MHz (nominal) may do it. Even recent benchmarking pages such as
http://www.tomshardware.com/charts/desktop-cpu-charts-q3-2008/Sandra-2008-Memory-Bandwidth,806.html
with measurements using the SANDRA memory bandwith show how FSB-based systems can't go above 7.5 GB/sec even being quadcore extremes using DDR3 and 1600 MHz FSB. Interestingly enough, you may see how all the AMD models have higher measured bandwith than any FSB based system.

As
http://www.tweaktown.com/articles/1665/2/intel_core_i7_memory_analysis_can_dual_channel_cut_it/index.html

tells us, AMD's integrated memory controller began with the socket 754 processors, featuring 3.2 GB/sec, which was a real number you could get in practice, that then was superseded by socket 939 processors with support for dual channel DDR-400 (6.4 GB/sec), which then were superseded by socket AM2 with support for up to 12.8 GB/sec.

As you know, my Core i7 920 is 2.66 GHz, capable of driving DDR3 memory at 1066 MHz of nominal speed, but in triple channel configuration, giving it 8*3*1066 MB/sec, 25.584 GB/sec of bandwidth... without the FSB contention nor FSB latencies problem of double duals, sure lyenough to feed all 8 threads. Also, as this domestic screen capture shows:

The cache hierarchy is right: 32KB+32KB L1, 256KB L2 and 8MB shared L3, this would give a progression per thread of 32, 128, 1024, of which the greatest step is the third level where the data is shared. The L1 and L2 sizes look small, to tell you the truth, but if you really have 8 threads running, chances are that you have some running the same algorithm in a data-partitioned scheme, of which they will be sharing data, which improves the effect of the L3 cache.

Since Intel now comes with 3D acceleration in its processors (by the way, sooner than AMD's Fusion), and especially important for me, 8-core systems, I think I won't have any interest on AMD processors for a while. Not even curiosities like the triple cores, that disappointed me because they consume as much power than an X4, or may have errors like the L3 TLB bug...

Monday, February 23, 2009

It is 1998 all over again. Will next year be 1999 all over again?

In 1998 AMD was living on the fringes, satisfying itself with the lower end of the market.

They produced a better alternative to older Intel Processors. You could buy a nice AM5x86 and give your 486 computer a performance similar to that of a Pentium 75 (I did, for 6 Machines), or, you could design your system around a K6-2 (bought and recomended a few, from Compaq), but no way of catching the performance of a (non-Celeron) P-II.

A system integartor would certainly be doing a good move building a low end system with AMD parts. No need to redesign your Socket 3 or Socket 7 Mobo, just a few BIOS tweaks (whole different story with Super 7). That course of action appealed to upgraders, gamers, and even some Tier-1 manufacturers (most noteworthy, Compaq) for their lower end consumer lines, but for High-End Workstation/Servers, Intel was the only game in town.

All that changed in 1999 onwards, when AMD gave Intel three hard punches to the ego (but not their wallets) in the X-86 space, with the K-7/Atholn & K8/Opteron:

1° To develop Cooper Interconnects.
1° To beat the 1Ghz Barrier.
1° To develop X86-64 (AMD-64).

Fast forward to 2009. AMD just released the Phenom II Processor. And today, I read a very interesting review . The fine folks at ArsTechnica took a PhenomII X4 940, overclocked it to 4.2Ghz (using a phase change cooler), and ran a comparison between a stock Phenom II X 940, the overclocked one, an Intel Core i7 965, a Core i7 920 and a Core 2 Quad QX9650, all Intel chips running at stock clock speeds...

And here we are, back to 1998 all over again, the PhenomII part is good, and competitive witht the older generation Intel parts (Penryn derivatives), and at a better price points, but you would be hard pressed to justify doing new deployments of High End Workstation or Servers based on it when you compare to the latter Intel offerings (Core i7 derivatives)...

Please read the full review, but, I guess this quote from the conclusions will summarize it:

«Deneb's comparative performance against the Core i7-965 and Core i7-920, however, is rather troubling. Even at 4.2GHz and with an IMC running at 2.53GHz (1120MHz memory clock), Deneb doesn't always outperform Intel's lower-end, 2.67GHz solution, much less the top-end i7-965. It's true that the i7-965 is a $1,000 part today, but a Deneb clocked at the rates we tested (if such a thing existed for the commercial market) would run at least $1K as well.

Our data indicates that AMD has a long-term problem it's not going to be able to solve with clockspeed. The company's next 45nm refresh will have to include architectural improvements that result in significantly higher performance clock-for-clock—bolting more L3 cache on the core isn't going to be the magic answer. Socket AM3 arrives soon with support for DDR3-1300, but that's no silver bullet, either—desktop applications tend to be latency-sensitive, not bandwidth-limited.»

Now, I really HOPE that AMD survives the downturn. The world really needs an AMD, but I do not see how next year, or the year after that, can be a 1999 for AMD. The lower end of the market will have to do...

Full Disclosure: Small tweaks to the article.