Dr. Dobb's Journal, February 2006

Bits and Bytes...


If you believe everything you read, "64 bits" is this week's bee's knees of computing. Microsoft must think so, as the company recently announced at least some of its upcoming server offerings will run only on x86-compatible 64-bit processors. In fact, the ready availability of 64-bit platforms is an important step forward. Still, that doesn't necessarily mean it's time to post your 32-bit system on Craigslist or eBay. There's a time and place for everything, including 64 bits.

According to Microsoft's Bob Kelly, the time and place for 64-bit systems is with performance-critical applications such as Microsoft's Exchange 12 e-mail server and its SQL Server database. Other applications areas that benefit from 64-bit processors are complex engineering programs, games, and anything that involves audio/video encoding. Anything, in other words, which takes advantage of 64-bit arithmetic or requires addressing datasets beyond the 4-gigabyte constraint of 32-bit processors. A 64-bit processor can address up to 16 exabytes of memory—that's 18-billion gigabytes, and more than enough for most compute-intensive applications.

Of course, in the spirit of "there's no such thing as a free lunch," the memory used by a 64-bit processor's larger integers and/or pointers can also lead to more paging and disk I/O, thereby degrading performance. This means that while some applications don't need 64-bit integers and/or pointers, they end up paying for them anyway.

In short, the fundamental difference between 32-bit and 64-bit processors isn't necessarily the speed of the processor, but the amount of data that can be processed that, at times, lends the appearance of faster speed. That said, there are workarounds (some of which involve virtual memory) that let you utilize 64-bit addressing on systems with less than 4 GB of memory, not to mention that you can gain some performance pop by running a 64-bit processor in 32-bit mode. The bottom line is that there's still a lot to learn when it comes to effectively using next-generation platforms, and the sooner we jump on them, the better prepared we will be for the future.

Speaking of the future, anyone who doesn't think the wireless world has found a home in academia hasn't sat in on a college lecture class recently. What with everything from iPods and Instant Messaging to e-mail and FreeCell, there's a whole lot of something going on, most of which seems to have little to do with learning.

That's changing, however, with the advent of "Interactive Audience Response Systems," referred to simply as "clickers"—radio frequency (RF) sender/receiver devices that let students and teachers interact in real time. A typical student/teacher scenario goes something like this: Students buy or rent a clicker (somewhat akin to a TV remote-control device but with fewer keys) at the beginning of the semester and register it with the school. Students can use a single clicker in multiple classes. When instructors want feedback, students answer, and their responses are instantly available and/or recorded for later review. Because many universities now have wired lecture halls, tracking and storing clicker information for professors isn't a big deal. Alternatively, instructors can plug USB readers into their laptops and store the information locally. With typical systems, up to 1000 student RF keypads can be used per receiver, with up to 82 sessions (channels) running at the same time in close proximity without interference.

There are a number of companies that offer this technology, including Turning Technologies (http://www.turningtechnologies.com/) and eInstruction (http://www.einstruction.com/). eInstruction claims its system is being used in 800 institutions in 50 states and 20 countries, with more than a million devices in the hands of students.

Granted, audience response systems such as these have been around for a while. Early implementations were based on infrared technology (IR), but RF offers clear advantages in range and the ratio of sender units to the receiver. Additionally, some vendors offer "virtual clickers"—soft keypads that run on PCs or PDAs that support all the features of standard clickers but with the added functionality of text messaging, which lets students submit questions to teachers and offers support for response to fill-in-the-blank and essay questions.

And on a sad note, John Vlissides, coauthor of the seminal book Design Patterns: Elements of Reusable Object-Oriented Software, recently passed away. Along with his coauthors who made up the "Gang of Four," John was a recipient of the Dr. Dobb's Journal Excellence in Programming Award in 1998. He was also the author of several other books, most of which focused on software design and patterns. For much of his career, John was a researcher at IBM's T.J. Watson Research Center. Prior to joining IBM Research, John was a postdoctoral scholar in the Computer Systems Lab at Stanford University, where he codeveloped InterViews. Memories of John have been put together on Ward Cunningham's Wiki (http://c2.com/cgi/wiki?JohnVlissides/).

DDJ