AMD processor goes belly-up zeroing memory

2006/03/07

Categories: GeekStuff

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.