« Today's funny spam | | The Dove Foundation: Lying telemarketers »

AMD processor goes belly-up zeroing memory

My friend Dan found this:

        #include 
        unsigned char a[4*1024*1024];

        int
        main(void) {
                while (1)
                        memset(a, 0, 4*1024*1024);
                return 0;
        }

We can reliably lock up the AMD64 systems available to us running this code. We've tried on a 3500+, 4000+, and 4400+. We've tried with 64-bit Linux and 32-bit Windows. The only other common thing is that these are nForce4 chipsets, but that shouldn't matter... Lockup isn't instant, but it's fast; a couple of minutes.