From owner-cse584-sp07-list@LISTSERV.BUFFALO.EDU Thu Mar 8 09:09:09 2007 Received: from ares.cse.buffalo.edu (ares.cse.Buffalo.EDU [128.205.32.79]) by castor.cse.Buffalo.EDU (8.13.6/8.12.10) with ESMTP id l28E99Nh013671 for ; Thu, 8 Mar 2007 09:09:09 -0500 (EST) Received: from front1.acsu.buffalo.edu (upfront.acsu.buffalo.edu [128.205.4.140]) by ares.cse.buffalo.edu (8.13.6/8.13.6) with SMTP id l28E91Fd000501 for ; Thu, 8 Mar 2007 09:09:01 -0500 (EST) Received: (qmail 11771 invoked from network); 8 Mar 2007 14:09:01 -0000 Received: from mailscan5.acsu.buffalo.edu (128.205.6.137) by front1.acsu.buffalo.edu with SMTP; 8 Mar 2007 14:09:01 -0000 Received: (qmail 24381 invoked from network); 8 Mar 2007 14:09:01 -0000 Received: from deliverance.acsu.buffalo.edu (128.205.7.57) by front3.acsu.buffalo.edu with SMTP; 8 Mar 2007 14:09:01 -0000 Received: (qmail 14545 invoked from network); 8 Mar 2007 14:08:44 -0000 Received: from listserv.buffalo.edu (128.205.7.35) by deliverance.acsu.buffalo.edu with SMTP; 8 Mar 2007 14:08:44 -0000 Received: by LISTSERV.BUFFALO.EDU (LISTSERV-TCP/IP release 14.5) with spool id 3698866 for CSE584-SP07-LIST@LISTSERV.BUFFALO.EDU; Thu, 8 Mar 2007 09:08:44 -0500 Delivered-To: CSE584-SP07-LIST@LISTSERV.BUFFALO.EDU Received: (qmail 21309 invoked from network); 8 Mar 2007 14:08:44 -0000 Received: from mailscan4.acsu.buffalo.edu (128.205.6.136) by listserv.buffalo.edu with SMTP; 8 Mar 2007 14:08:44 -0000 Received: (qmail 22427 invoked from network); 8 Mar 2007 14:08:43 -0000 Received: from hadar.cse.buffalo.edu (128.205.32.1) by smtp5.acsu.buffalo.edu with SMTP; 8 Mar 2007 14:08:43 -0000 Received: from hadar.cse.Buffalo.EDU (ag33@localhost [127.0.0.1]) by hadar.cse.Buffalo.EDU (8.13.6/8.12.10) with ESMTP id l28E8hIG009477 for ; Thu, 8 Mar 2007 09:08:43 -0500 (EST) Received: (from ag33@localhost) by hadar.cse.Buffalo.EDU (8.13.6/8.12.9/Submit) id l28E8hXX009476; Thu, 8 Mar 2007 09:08:43 -0500 (EST) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-UB-Relay: (hadar.cse.buffalo.edu) X-PM-EL-Spam-Prob: : 7% Message-ID: Date: Thu, 8 Mar 2007 09:08:43 -0500 Reply-To: Albert Goldfain Sender: "Philosophy of Computer Science, Spring 2007" From: Albert Goldfain Subject: the "where" and "when" of computation To: CSE584-SP07-LIST@LISTSERV.BUFFALO.EDU Precedence: list List-Help: , List-Unsubscribe: List-Subscribe: List-Owner: List-Archive: X-UB-Relay: (hadar.cse.buffalo.edu) X-DCC-Buffalo.EDU-Metrics: castor.cse.Buffalo.EDU 1029; Body=0 Fuz1=0 Fuz2=0 X-Spam-Status: No, score=-2.6 required=5.0 tests=AWL,BAYES_00 autolearn=unavailable version=3.1.7 X-Spam-Checker-Version: SpamAssassin 3.1.7 (2006-10-05) on ares.cse.buffalo.edu X-Virus-Scanned: ClamAV 0.88.6/2777/Thu Mar 8 08:40:01 2007 on ares.cse.buffalo.edu X-Virus-Status: Clean Status: R Content-Length: 2019 As we saw in recitation, both a binary abacus (BA) and laptop (L) work properly in virtue of gravity and electromagnetism respectively. When something is causally connected with a physical force in this way, it makes sense to ask "where is BA or L computing a function?" and "when is BA or L computing a function?" Considering the laptop (which everyone agreed to call a computer) it was very difficult to answer the where question (where does the real "number crunching" happen): A computation can't be taking place at the peripherals, those are just for input/output devices...it can't be happening on the hard disk, that is just memory...it can't be happening in the entire CPU because assembly languages are written to address just the registers...it can't be happening in the whole register because some parts are used for the clock signal and buses, and only one part of the register is the ALU (arithmetic logic unit). If we zoom into the logic gates that make up the ALU we find a bunch of transistors. Now when enough voltage passes through a transistor it can be interpreted as a "1"...but can a computation happening when there is *no* voltage passing through the transistors (after all, no voltage is just an absence of voltage :)) Notice that a transistor is very much like the rock-on-a-stick binary abacus :) HOWEVER, in some real sense, the computation is taking place at all of those spatial positions...it cannot be reduced to just the functioning of ALU tranistors (even if every function computed must necessarily affect these transistors). The when question (which we didn't get to) is equally puzzling. When does a computation happen in a laptop? Is it only during the execute of the fetch-execute cycle? Is it only on the clock pulse of the processor? If yes (to this last qusetion) what about the fan continuously blowing (independent of the clock pulse) keeping the laptop cool...i.e., helping it remain *effective*...is the laptop not computing as continuously as the fan? Albert