** Bio ** Resume **
« Previous month (Nov 2004) | Main | Next page of month (Dec 2004) »

20050130 Sunday January 30, 2005

Chips, Cores, Threads, OH MY!! Computers

I don't know about you, but the whole mess around the emerging lexicon associated with modern processors is very frustrating. Terms are frequently redefined and twisted based on each vendor's whim and fancy. But words (should) mean something and obviously it's important that we all talk the same language.

A perfect example... you might have been approached by a Jehovah's Witness in the past. Or have a friend who is a Mormon. I do. They are wonderful people in general. When they talk about their faith their words and themes sound very similar to Biblical Christianity. But dive a little deeper and you'll find the belief systems are radically different. I'm not making a statement on value or correctness or anything like that (so don't bother starting a religious debate). My point is that two people can talk and maybe even (think they) agree, when in fact they are as far from each other as heaven and hell (so-to-speak).

When it comes to the engines that power computers, people talk about CPUs, and Processors, and Cores, and Threads, and Sockets, and Chips, and n-Way, and TEUs, and CMT, and Hyper-Threading, and and and... Whew!

I like to use three terms... Chips, Cores, and Threads. Note that this is pretty much what SPEC.ORG uses: http://www.spec.org/cpu2000/results/rint2000.html

I stay away from Sockets and Processors and CPUs and n-Way, as these are confusing or ambiguous or redundant.

Here are some examples [Chips/Cores/Threads]:
V880:          8/8/8
V490:          4/8/8
p570:          8/16/32
V40z:          4/4/4
Niagara:      1/8/32  (for a system with just one of these chips)

Here are my definitions:

Chips
This refers to the laser scribed rectangle cut from a semiconductor wafer, which is then packaged in a plastic or ceramic casing with pins or contacts. A "chip" may have multiple processing "cores" in it (see: Cores). The US-IV and Niagara and Power5 and Itanium and Opteron are all single "chips".

Cores
This term refers to the number of discrete "processors" in a system or on a chip. Some chips, such as Power5, US-IV,  Niagara, etc, have more than one core per chip. A core is also know as a TEU (thread execution unit). Each "core" may also be multi-threaded (see Threads), which can support concurrent or switched execution. Some cores have more than one integer, floating point or other type of "execution unit" that supports instruction level parallelism and/or more than one concurrent thread.

Threads
Threads are really a S/W construct. These are the streams of execution scheduled by the OS to do work driven by the computer's processor(s). Some cores can handle more than one thread of execution. Some cores can execute more than one thread at the same time. Other cores can be loaded with multiple threads, but perform H/W context switching at nanosecond speeds. The Thread Count of a processors equals the number of cores multiplied by the number of threads handled by each core. The US-IV has a Thread Count of 2*1=2. The Power5 has a Thread Count of 2*2=4. Niagara has a TC of 8*4=32.

Sockets (avoid)
This term is designed to communicate the number of processor "chips" in a system. However, in reality it is an ambiguous term, because IBM's MCMs (multi-chip modules) have four "chips" per motherboard "socket". And, a long time ago, some sockets were stacked with more than one chip. Regardless, this term is supposed to equate to the number of "chips", so why confuse the issue. Just use "chips".

Processors (avoid)
This is technically equal to the number of cores. However, marketing has corrupted this term and some vendors (like Sun) equate this to the number of chips (or sockets), while others equate this to the number of cores. Vendors also use the term "n-Way". But since the number "n" equals the number of processors, this means different things depending on the vendor. For example, a 4-way V490 from Sun has 8 cores, and Oracle will charge you $320,000.00 (list price) to run Oracle on it.

CPUs (avoid)
This suffers from the same marketing overload problem as Processors.


January 30, 2005 03:47 PM EST Permalink

SOA & JSR 208: Reality Check Computers

A friend recently asked me what I'm hearing about SOA adoption and the buzz around JSR 208.

"JSR 208" might be a new term for some. Here is a brief overview: http://www.bijonline.com/PDF/Chappell%20oct.pdf

SOA is so over hyped these days that everyone probably has something different in mind when they hear that TLA (three letter acronym). Kinda like "Grid" - the concepts are real and useful, but the hype around SOA and Grid is running years ahead of reality.

Remember when N1 was first discussed... the vision of heterogeneous datacenters managed by a meta-OS that auto-provisions virtual slices into which services are deployed and managed to sustain business-driven SLOs based on priorities and charge-back constraints. Just roll in new equip and N1 will "DR" (read: dynamically reallocate) services into the increased capacity. If something fails... no problem... N1 will detect and adapt. We'll get there... eventually. And we've made important steps along the way. Investing almost $2B/yr in R&D will help. But it'll take (a long) time.

In some circles I'm hearing similar visions of grandeur around SOA. They talk of business apps described at a high level of abstraction (eg: business process models) loaded into an "application orchestrator" that broadcasts descriptions of the various components/services it needs, and then auto-builds the business app based on services from those providers (both internal and external) that offer the best cost point and service level guarantees. As new "service" providers come on-line with better value (or, if existing providers go off-line), business apps will rebind (on-the-fly) to these new service components.

Now, combine N1 and SOA and ITIL, and we could paint a beautiful picture of Service Delivery based on self-orchestrating business apps made up of discrete reusable and shared (possibly outsourced) components that each exist in their own virtual containers that are auto-provisioned and auto-optimized (based on SLAs and Cost and Demand) to maximize asset utilization and minimize cost, all while meeting service level objectives (even in the event of various fault scenarios).

Okay - back to reality :-) I'm finding there is a common theme from many of my customers/prospects. Many are seeking to increase efficiency and agility thru "horizontal integration" of reusable building blocks (eg: identity, etc), a shared services platform (grids, virtualization, etc), and higher-level provisioning (automation, SPS).

That isn't SOA, per-se, but is a good first step. The "building blocks" most are looking to share today are infrastructure services, rather than higher-level business app components. There is a maturity gradient that simply takes a lot of hard technical and political work to negotiate. Every customer is at a different place along that gradient, but most are embarrassingly immature (relative to the grand vision). It takes strong leadership and commitment at all levels, and a synchronization of people, processes, technology, and information, to even embark on the journey. It takes a tight coupling of S/W engineering, IT Architecture, and Business Architecture.

So, yes, I'm passionate about SOA, and JSR 208 will help integrate discrete business services. There are some firms that are pushing the envelope and building interesting business/mission apps from shared "service providers". But, in general, SOA is an abused term and the hype can derail legitimate efforts.

I'd be curious if others are sensing "irrational exuberance" around SOA, which can lead to a "Trough of Disillusionment" and a rejection of the legitimate gains that an evolutionary progression can provide. As Architects, we can establish credibility and win confidence (and contracts) by setting realistic expectations (hype-busting) and presenting not only a desired state "blueprint" (something that gets them existed about the possibilities for their environment), but a detailed roadmap that demonstrates the process and the benefits at each check point along the way.


January 30, 2005 02:22 PM EST Permalink

20050127 Thursday January 27, 2005

Sun & The Nobel Prize Computers

Back about 15 years ago, an economist named Ronald Coase won the Nobel Prize based on some very interesting ideas that we're just starting to see drive serious considerations and behavior in the the world of IT. Sun is well aware of this and responding with initiatives (that I can't talk about here). Like the "perfect storm", our industry is at an inflection point driven by the confluence of various trends and developments. These all add up to an environment that is ripe for Coase's Law to be enforced with prejudice.

Coase's Law states that: firms should only do what they can do more efficiently than others, and should outsource what others can do more efficiently, after considering the transaction costs involved in working with the outside suppliers.

There is nothing earth shattering about that simple and intuitive statement. However, back in the 90's, when this idea was explored in theoretical circles by bean counters, the "escape clause" related to transactional costs rendered the idea impotent, or at least limited, in the IT world. A captive internal service (eg: payroll) might not be highly efficient, but the thought of outsourcing a business function was quickly evaporated under the heat of a financial impact analysis. It just cost too much per transaction to realize a worthwhile return. And the incredible growth and prosperity of the "bubble years" leading up to Y2K was not a climate that drove consideration of the business value of outsourcing.

But all that is changing. You are familiar with many of the various "laws" that describe trends in IT, such as:

You are also familiar with concept of Web Services that leverage standard interfaces and protocols and languages to facilitate secure B2B and B2C transactions over these networks.

Taken together, the cost of an outsourced transaction is now dramatically lower than it was pre-bubble. Today, outsourcing is not only a viable consideration for certain business functions, but a necessary competitive reality. Here's the way I interpret and apply Coase's Law... Every business has a strategy to capture value and translate that value into revenue and profit. But the realities of running a business require common support functions. Every company had to build their own network of these supporting services (think: Payroll, HR, PR, Legal, Marketing, Manufacturing, etc, etc, etc). Think of these as chapters tucked away in the back of a company's Business Process handbook... necessary ingredients to implement the Business Design, but not part basic value capture. Many of these necessary support functions operate with limited efficiency and effectiveness, because delivering these services is not part of the company's DNA.

But there are provides that live on Gilder's external network fabric, operating grids of Moore's compute capability, offering highly efficient Web Services based business functions. These providers specialize in specific support services and can drive efficiency (and lowered cost) by aggregating demand. Their core competency is delivering secure reliable business functions at contracted service levels at a highly competitive transactional cost point. Wow! Think about that.

And moving forward, as we begin to explore the implications of Service-Oriented Architectures, as we implement business processes by orchestrating applications that are built from loosely coupled networked "services", it is not unreasonable to expect some or many of these SOA-based business components to be supplied from one (or more) outsourced suppliers.

Some people believe that targeted outsourcing will drive massive deconstruction and reconstruction, and that this will be THE major disruptive catalyst in business designs over the next several years. If so, IT will play a major part in this transformation. Sun needs to aggressively tap into this oppty (and we are). To do so will require building B2B/B2C services (and the underlying distributed service delivery platform) that integrates & optimizes business processes beyond the four walls to include the external value chain.

In his 1997 book, The Innovator's Dilemma: When New Technologies Cause Great Firms to Fail, Harvard business professor Clayton Christensen posited that, thanks to the Internet, companies are becoming more vulnerable than ever to a competitor wielding a disruptive technology - a technical process or business model so transformative that it could shake a Fortune 500-sized corporation, or even an entire industry, to its foundation. The lesson is that companies must structure themselves so they can rapidly build a new business around a disruptive technology even as they sustain their core competency.

IBM's OnDemand Enterprise is described as: "An Enterprise whose business process – integrated end-to-end across the company and with key partners, suppliers and customers – can respond with speed to any customer demand, market oppty or external threat".

Like Coase's Law, the expression of IBM's OnDemand vision is really common sense. It is the confluence of technology and economics today that has caused these ideas to become very interesting. Now it all comes down, as it always does, to execution.

And one of the initiatives we're driving at Sun that I can talk about is the Service Optimized Data Center (SODC).  The Sun Service Optimized Data Center program is comprised of an extensive set of services and technologies. Sun creates a comprehensive roadmap, which is used to transform your data center into an efficient, risk-averse, and agile service-driven environment that emphasizes IT operation as a strategic business driver and competitive weapon.


January 27, 2005 09:44 AM EST Permalink

20050122 Saturday January 22, 2005

Strength Workout Exercise

In previous blog entries in my "Exercise" folder, I've talked about cardio/endurance exercise. In an overall fitness program you'll also want to work on flexibility (thru regular stretching) and speed (thru sprints, racquetball, etc). Nutrition and rest are also important. But today,  I'm going to describe the strength routine that I do twice per week. I know that everyone likes a different routine, but this one might give you some ideas if you haven't really put any thought into it and want to get started.

I bring the following chart with me to the gym, on which I list my current weights and rep counts for each exercise, and make notes as I go. Here's the chart, followed by some comments.

1/2: Abs and Obliques
A strong core is vital to overall health and performance. The first two listed in the chart are Ab exercises to work this area. I use "machines" for these exercises, to supply enough resistance for 3 sets of 8-12 reps. This is better than, say, 50 body weight crunches. The Oblique Twist machine really helps the golf and racquetball swing. Strong abs are central to just about any sport, and good for your back.

3: Squats: All Around Lower Body [Gluts/Quads/etc]
Almost everyone says that a Squat exercise is one of the best full body exercises there is. I like to use free weights for this one to also improve stabilizer muscles. You'll really feel it in the quads. Use a safety rack or a spotter.

4: Pushups: Chest and Triceps
Now that your legs are rubber, here's a classic upper body "body weight" exercise. Once I can do 50, maybe I'll switch to a bench press. For now, this is a great workout for the chest and triceps and stablizers.

5: Calves
Having given your legs a little break, this is a good focus exercise. It also gives you a few minutes before the intense upper body work that comes next. The Calf Heel Raise machine is a great way to build up the calf muscles. No, running really doesn't build leg strength.

6/7: Pullups/Dips: All Around Upper Body [Shoulders/Back/Lats/Chest/Arms/etc]
The assisted pullup and dip machines are great for you! You can set the assist weight pretty high to start with... enough to just get in 3 sets of 10 reps each. Again, being body weight exercises, the stablizers come into play. Eventually, you'll work up to not needing an assist.

8: Hamstrings
Now that your upper body is spent, go head over to the Leg Curl machine to do a little work on the hamstrings.

9: Biceps
You've fatigued the biceps already, so this focus exercise will really do the job. Arm Curl machines just don't do it for me. I pick up one of the pre-loaded freeweight curl bars for this one.

10: Lower Back
Finally, to round out the workout, do Back Extensions on a "roman chair". This'll work the lower back and balance out the abs. A strong lower back is important to prevent injury in many day-to-day activities.


January 22, 2005 07:14 AM EST Permalink

20050119 Wednesday January 19, 2005

Oracle Tech Day & NY Cabbies Computers
It's been awhile since I've visited New York. Last time I was there I met with customers in the World Trade Center. Yesterday I was in midtown Manhattan at the Grand Hyatt, attached to Grand Central Station.

I presented at an Oracle Technology Day. Over 500 people registered for the event to hear about technology and solutions from Sun and Oracle. I discussed, among other things, our ERP Grid Reference Architecture that combines Oracle's 10g RAC with our Opteron-based Servers and Infiniband. Sun is sponsoring five cities. Over 700 are registered for the Atlanta session, to whom I'll be presenting next week.

On the way back home from the NY session, I was dropped off at LaGuardia. I had to cross a two lane street to get across to the main gate/check-in curb. It was a clear (but cold) day, 100% visibility. In front of me was a wide brightly painted cross-walk. Several people were standing there waiting to cross (which should have been my first clue that things are different in New York). Finally a natural break in traffic... the next group of vehicles is about 70 feet away, lead by a black limo approaching at about 20mph. Great! It's our turn... I step out and start to cross. Suddenly someone yells out to warn me... "Hey Buddy, Watch Out"! I look to my right and the limo driver apparently has no intention to respect the inalienable rights of pedestrians in crosswalks! He slows down just enough to allow me to back up onto the curb and get out of his way!

The term "inalienable" is apropos to this experience :-) The root, alien, has this definition:
Adj. Belonging to, characteristic of, or constituting another and very different place, society, or person; strange

I think I saw the cabbie mutter: "you're not from around here, are you". Or, something like that :-) I'm reminded of Morpheus' line in The Matrix when he explains to Neo that: "Some rules can be bent, others can be broken". Seems to be the creed of the NY cabbie.

Anyway, New York is a lot of fun. Just look both ways before you cross. And then, run like hell.



January 19, 2005 06:41 PM EST Permalink

20050117 Monday January 17, 2005

Amazing Fry & The Tsunami Personal
<>You've seen the bumper sticker: "What Would Jesus Do?". Given the recent diet fads, ever wonder if he enjoyed his carbs? :-)

As an aside, that isn't a bad reflective question to ask yourself if (when) you find yourself in a moral dilemma and need to make a decision. And, most things have moral underpinnings (eg: should you invest some of your disposable wealth in a mid-life Harley-Davidson, or help 1,000 recent Tsunami survivors make it to next Christmas?)

So two nights ago the family was eating a quick meal. The kids love "steak frys". They're an easy side dish... just pour out some frozen sliced potatoes on a cookie sheet and bake them till they're golden and sizzling.

It's unusual that we have the TV on during dinner... but the News was in the background, showing coverage of the almost unfathomable destruction of life and dreams caused by the most powerful earthquake in 40 years. Kinda puts life and death and material pursuits in perspective.

We're trying to explain to our 7 and 9 year olds what happened and how people are helping when my wife looks down to grab another fry (okay, I'll admit, we'll eat some too... blood sugar addicts that we are :-) and this is what she sees!

<>

I do believe God reveals himself, but generally thru more personal and profound and life changing ways than a french fry! My wife wouldn't let me eat it :-). I read that a faint portrait of Mary in an old toasted cheese sandwich just went for $28K on eBay. Hmmm. We've got the fry in a sealable baggie in the fridge. If anyone wants to buy it, make your check payable to the Salvation Army disaster relief fund. You never know....

January 17, 2005 06:06 PM EST Permalink

20050115 Saturday January 15, 2005

CIO Longevity and IT Execution Computers
This is a little longer than I generally like for a blog entry. So, I tell you what to expect... I quickly review the essence of IT, then consider why many IT groups are considered ineffective, and finally what can be done to improve execution.

The essence of Information Technology is to create, deliver, and sustain high-quality IT services that meet (on time and within budget) the functional specs and the on-going service level agreements (SLAs) as established thru a partnership with the owners of the requested services. This is, in a nutshell, the role and ultimate responsibility of the CIO.

The creation of IT services generally focuses on functional requirements (the purpose of the application - what the service needs to do for the consumer/user). The delivery and support of those services focuses more on quality of service (QoS) attributes, such as performance, as well as the non-functional or systemic qualities (aka: the "ilities") such as reliability, availability, maintainability, securability, manageability, adaptability, scalability, recoverability, survivability, etc. A quick Google search found this paper among many on the topic.

Unfortunately, achieving success is often doomed from the start. And is probably why the average CIO survives for just 30 months (a new Gartner report even suggests that 2/3rds of CIOs are worried about their job)! Quality is sacrificed on the alter of expedience. Developers focus exclusively on the functional spec. For example, it is rare to find developers who are concerned with Recovery-Oriented Computing techniques (ref: Berkeley's David Patterson, et al) that can help mask infrastructure faults by, say, performing run-time discovery and binding of alternate dependencies. It is too easy for a developer to assume their target platform is failsafe, or that recovery is outside their area of concern. That's just lazy or ignorant, IMHO.

Just as guilty are the teams responsible for the implementation of those services. Too often new services stand alone in a datacenter as a silo, constructed using a unique set of components and patterns. Often, even if there is an IT Governance Board and/or an Enterprise Architectural Council, their strategic vision, standards and best practices are ignored, ostensibly to achieve time-to-market goals. In reality, it's just easier to not worry about the greater good.

What am I leading up to? Well, I believe there are two key areas that IT must take more seriously in order to increase their value to shareholders and to those who desire their services. These might even help the CIO keep his or her job.

The first is the effective leadership and influence of an Enterprise Architecture Council. One that has a clear and compelling vision of a shared services infrastructure, and has established a pro-active partnership with the developer community and strategic vendors to realize that vision. One that fights hard against human nature to ensure that IT services meet standards in quality, adaptability, observability, platform neutrality, etc.

The second is a focus on the disciplines associated with running a world-class datacenter operation. There is a well established set of standards that are useful as a framework around which these disciplines can be built. It's called the IT Infrastructure Library (ITIL) and is widely adopted in Europe and increasingly being pursued in the States across business, agencies, and institutions.

There are 10 ITIL "Best Practice" disciplines associated with the Delivery and Support of IT Services. These prescribe relevant and desirable processes that an IT group should seek to implement if they desire to evolve to a higher level of Operational Maturity. ITIL is highly focused on building a working partnership between IT and the associated Business Units, on increasing the quality of IT services, on reducing the true cost of operations, on establishing communications and execution plans, on the promotion of the value of IT, on understanding the cost and priority of services, etc.

Of the ten focus areas, the ITIL discipline that is probably the most important to start with is "Change Mgmt". This is a key area with a significant ROI in terms of service quality and cost. The cost of sloppy change control is huge. In a Fortune 500 acct I visited recently, the S/W developers all have root access to the production machines and make changes ad hoc!! Unfortunately, this isn't uncommon. The introduction of structure and discipline in this area is a great test case for those who think they want to implement ITIL. While the benefits are self evident, it isn't easy. The change will take exec level commitment. There will be serious pressure to resist a transition from a cowboy/hero culture to one that produces repeatable, consistent, predictable high-quality service delivery. The "heroes" won't like it, and they often wield influence and power. But, if this ITIL discipline can be instilled, the other nine have a chance. It's a multi-year effort, but the results will be a highly tuned and business linked competitive weapon.

The journey that many IT shops will have to take to achieve higher levels of maturity as suggested by Gartner and Meta, and described by the ITIL Best Practices, is a systemic culture change that fills gaps, eliminates overlap, aligns effort, and establishes structure and methods, designed to increase quality and lower costs. But, ultimately, it is a journey to prosperity and away from dysfunction. ITIL isn't to be taken lightly. It isn't for all IT departments (well, it is to some level, but many aren't ready to make the commitment). These charts show that most (>80%) have stopped and camped on the shore of mediocrity way too early in the journey.





There is a certification track for ITIL. A 3-day ITIL Essentials class is available to provide an introduction and "conversant" knowledge of the various discipline areas. A multiple choice cert test validates this level of understanding. This class is a pre-req for the very intense two-week ITIL Managers (aka: Masters) class. More than 50% fail the two 3-hour Harvard Business School type essay exams that are taken to achieve this level of certification. This is a respected certification and actually demonstrates true command of the principles of IT service excellence.

Sun also has offerings around our Service Optimized Data Center program, a new comprehensive roadmap of services and technologies to help customers deploy and manage IT services faster, smarter and more cost-effectively in their data centers. EDS Hosting Services is pleased with it. SODC leverages, among other things, our Operations Management Capability Model, based on principles from the Information Technology Infrastructure Library (ITIL) and the Controls Objective for Information and Related Technology (COBIT).

I believe Sun can establish itself as more than a parts and technology vendor by demonstrating value in helping our customers address the "Process of IT", into which our Technical Solutions are best delivered.

January 15, 2005 09:35 AM EST Permalink

20050114 Friday January 14, 2005

The Fallacy of IBM's Power6 Computers

IBM is leaking FUD about its processors again. The Power5+, it is said, will be released later this year, ramping to 3GHz. The Power6, according to a "leaked" non-disclosure preso discussed by TheRegister, will sport "very large frequency enhancements". At the end of another news.com article, IBM suggests the Power6 will run at an "ultra-high frequency".

In engineering terms, those kinds of phrases generally imply at least an "order of magnitude" type of increase. That's [3GHz * 10^1], or an increase to 30GHz! But let's view this thru a marketing lens and say IBM is only talking about a "binary" order of magnitude [3GHz * 2^1]. That still puts the chip at 6GHz.

And therein lies part of the problem. First, even Intel can't get past 4GHz. In an embarrassing admission, they pulled their plans for a 4GHz Pentium and will concentrate their massive brain trust of chip designers on more intelligent ways to achieve increasing performance. More on that in a minute. Now I know IBM has some pretty impressive semiconductor fab processes and fabrication process engineers. But getting acceptable yields from a 12" wafer with 1/2 billion transistor chips at 6GHz and a 65nm fab process is pure rocket science. They can probably do it, at great shareholder expense. But even if that rocket leaves the atmosphere, they are still aiming in the wrong direction. As Sun, and now Intel, have figured out, modern apps and the realities of DRAM performance (even with large caches) render "ultra-high" clock rates impotent.

I've also got to hand it to IBM's chip designers...Here is an interesting technical overview of the z990 (MainFrame) CPU. The Power6 is targeted as the replacement for the z990, so it'll have to meet the z990 feature bar. The Power6 is rumored to be a common chip for their M/F zSeries and Unix pSeries platforms... (but they've been talking about a common chip for 10 years now, according to Gartner). Here is an excerpt of the z990 description:

"These include millicode, which is the vertical microcode that executes on the processor, and the recovery unit (R-unit), which holds the complete microarchitected state of the processor and is checkpointed after each instruction. If a hardware error is detected, the R-unit is then used to restore the checkpointed state and execute the error-recovery algorithm. Additionally, the z990 processor, like its predecessors, completely duplicates several major functional units for error-detection purposes and uses other error-detection techniques (parity, local duplication, illegal state checking, etc.) in the remainder of the processor to maintain state-of-the-art RAS characteristics. It also contains several mechanisms for completely transferring the microarchitected state to a spare processor in the system in the event of a catastrophic failure if it determines that it can no longer continue operating."

Wow! Still, they are continuing to fund rocket science based on the old "Apollo" blueprints. And that "dog don't hunt" any longer, to mix metaphors. Single thread performance and big SMP designs are still important. Sun leads the world in that area, with the 144 core E25K. And our servers with US-IVs (et al), AMD Opterons, and the engineering collaboration we're doing with Fujitsu should continue that leadership. But extreme clock rates are not the answer going forward.

In the benchmarketing world of TPC-C and SPECrates, where datasets fit nicely inside processor caches, performance appears stellar. But the problem, you see, is that for real applications, especially when micro-partitioning and multiple OS kernels and stacked applications are spread across processors, the L1/L2/L3 caches only contain a fraction of the data and instructions that the apps need to operate. At 6GHz, there is a new clock tick every 0.17 ns (light only travels about 2 inches in that time)!! However, about every 100 instructions or so, the data needed by a typical app might not appear in the processor cache chain. This is called a "cache miss" and it results in a DRAM access (or worse - to disk). Typical DRAM latency is about 150-300ns for large/complex SMP servers. Think about that... a 6GHz CPU will simply twiddle it's proverbial thumbs for over 1000 click ticks  (doing nothing but generating heat) before that DRAM data makes it way back up to the CPU so that work can continue. If this happens every 100 instructions, we're at <10% efficiency (100 instructions, followed by 1000 idle cycles, repeat). Ouch!! And that ratio just gets worse as the CPU clock rate increases. Sure, big caches can help some, but not nearly enough to overcome this fundamental problem.

What to do? The answer is to build extremely efficient thread engines that can accept multiple thread contexts from the OS and manage those on chip. And we're not talking 2-way hyper-threading here. Say a single processor can accept dozens of threads from the OS. Say there are 8 cores on that processor so that 8 threads can run concurrently, with the other threads queued up ready to run. When any one of those 8 threads need to reach down into DRAM for a memory reference (and they will, frequently), one of the H/W queued threads in the chip's run queue will instantly begin to execute on the core vacated by the "stalled" thread that is now patiently waiting for its DRAM retrieval. We've just described a design that can achieve near 100% efficiency even when DRAM latency is taken into account. Ace's Hardware reports that "Niagara has reached first silicon, and is running in Sun's labs".

I won't comment on the veracity of that report. But if true, we are years ahead of competition. We're orbiting the Sun, and IBM is still sending its design team to the moon.

An analogy - consider an Olympic relay race... There are 8 teams of 4 runners. Each runner sprints for all they are worth around the lap once, and then hands the baton, in flight, to the next runner. We've got 32 "threads" that are constantly tearing up the track at full speed. On the other hand, a 6GHz single threaded core is like a single runner who sprints like a mad man around the track once, and then sits down for 15 minutes to catch his breath. Then does it again. Which model describes the kind of server you'd like running your highly threaded enterprise applications?


January 14, 2005 12:00 PM EST Permalink

Most Embarrassing Moment Humor

Yesterday I spent 17 hours on-the-job... A 4am alarm to catch a 6am flight out of Orlando to *Virginia* for a customer meeting. I pull back into the driveway just before 9pm. Whew. I'm in the bathroom getting cleaned up, the kids are asking questions (eg: "did you get me anything?", "was it snowing?"). The *dog* is jumping. And my cell phone rings.

My cell reception isn't the best from home. Some guy is asking me questions about *Oracle* performance characteristics across our various *server* offerings w.r.t. competitive systems. Given the cell quality and the context in which I took the call, I didn't catch his name. But these are technical questions with possibly sensitive details, so I challenge the guy: "Who do you work for?". It was a 510 area code and he said Sun Microsystems, so we continue the conversation. A few minutes later the conversations gets a little more into the details, so I challenge him again: "What did you say your name is?".

It's Andy Bechtolsheimhttp://www.sun.com/aboutsun/media/bios/bios_bechtolsheim.html

Just Employee #1 and Founder of Sun Microsystems. He probably made the "hiring" decision to bring Scott McNealy on board (employee #3).

Sun Microsystems was founded in 1982 by Andreas Bechtolsheim, an electrical engineering PhD student in the Computer Systems Laboratory (CSL), Scott McNealy and Vinod Khosla, roommates at Stanford's Graduate School of Business, and Bill Joy, a PhD student in computer science at the University of California, Berkeley.

And I'm asking him who he works for! I wouldn't have blamed him if he then asked me who I *used* to work for :-) Anyway, he's a great guy to have fighting on our side. The systems and designs and ideas he brought back to Sun with him are going to shake up the industry.


January 14, 2005 09:40 AM EST Permalink

20050113 Thursday January 13, 2005

Solution Consulting @ Sun Computers

I just met with a large customer up here in Virginia. The rep I was with spoke of a colleague who has an amazing ability to sell complete solutions (not just a collection of parts). He delivers Solution Proposals with the not so subtle expectation that they will not be broken down into component parts with line item veto authority on the part of the customer. Somehow we need to bottle that sales behavior... The benefit of a proven solution w.r.t. cost, risk, complexity, support, etc, is self-evident. Too often, I believe, Sun's field is conditioned to (or we've conditioned the customer to think that we) offer solutions as strawmen that we expect will be hacked up and put back together (with many pieces left on the garage floor).

Client Solutions (read: Professional Services from Sun and our Partners) needs to be part of the total Solution Package. And we need to present the package with the clear expectation that we'll assist in the design, test, deployment and on-going mgmt/support, be committed to our customer's success, share in the risk, etc. But that the solution stands as a whole... If the customer simply wants a miscellany of parts, then we'll need a note from their mom :-) (eg: the CIO) that they understand the increased risk to their project's cost, timeline, and ultimate success. That they are "skiing outside the boundary area".

I've noticed that about half of the customers I deal with have senior techo-geeks on their staff. They often go by the title "Architect". Often they are far from it... but they've been there forever, and they are often brilliant technologists that can integrate "creative" solutions from random piece parts. In fact, this is how they thrive and how they (think they) sustain their value add... They become threatened by and obstacles to a solution sale in which the integration work is done for them. Somehow we need to figure out how to make these "technical grease monkeys" feel comfortable with a custom automobile that comes from Detroit already well tuned and ready to run. Sun can't survive being in the auto parts business.  We need to leverage their brilliance and secure their vote of confidence. There is an art to getting folks like this to "come up with an idea" that you already have :-) If they become the "owner" of the reference architecture (upon which the proposed solution is built), and still get to play with the technology and learn new techniques, and they can still look like they came up with the idea, then I think we can get past that common roadblock.

However, I think there is a development gap in Client Solutions that we have an oppty to address... We have a lot of people who can talk the talk... but we have fewer people that have actually implemented complex solutions such as N1 SPS, Trusted Solaris based SNAP solutions, Retail-oriented SunRay POS gigs, comprehensive ITIL compliance audits, strategic BCP consultation, etc... This is a natural fallout of the fact that most of us came from the pre-sales side of the merged Client Solutions organization. As we become even more successful in securing solution architecture and implementation gigs, we'll need to step up and hit the ball out of the park - not just talk about being able to do it. I encourage everyone to get as much hands on experience as possible with our strategic solution offerings. I know I'm doing that with N1 SPS, SOA, and Sol10. I know we're all are ramping our skills. That's goodness. Thankfully, I think it is easier to engage partners and teach (or remind) bright technical pre-sales "SEs" how to architect and implement solutions, than it is to teach implementation gurus the inter-personal skills and acumen needed to talk to CIOs about business value and relevance.


January 13, 2005 04:21 PM EST Permalink

20050112 Wednesday January 12, 2005

Making Progress Exercise

How do you double your capability? You've surely seen this described in economic analysis. But this concept applies to any form of progress measured in terms of percentage based increments. Say you have a desire to run twice as far as you can today, or you'd like to double your savings, or maybe bench press twice as much weight, etc. There is an easy formula to figure out your strategy and milestone goals...

Let's take an example. Say you want to perform a strength-based exercise at twice as much weight, in a year. A standard rule of thumb is that you should only add about 5-7% to the weight you use, and only once you can perform the exercise at the current weight with "ease" (read: in control, with proper form, for all the reps). Another rule of thumb in strength training is to workout twice per week, to provide enough recovery time. Another is to perform 3 sets of 8-12 reps per exercise, to muscle overload (can't do another rep). Another is to take reach rep slowly (exhale during a 2 count up, hold for 1, and inhale during a 4 count back). There is more to it, such as mixing up the type, intensity, speed, etc, to overcome the adaptation effect. But you get the picture.

Okay, given these heuristics, let's see how much weight we'd have to add each month to double our capability. Using the formula below, it works out to just under 6% per month, which falls right into the sweet spot of the "best practice" for strength training. The challenge, of course, is to work hard enough so that you're ready to add 6% at the end of each month. Which means you've built back up to doing 3 sets of 12 reps with perfect form. That might not be feasible unless you are just starting and have started light. But it's a rate you'll want to track if you intend on 2x in a year.

Here are the equations, and a spreadsheet that illustrates the milestones assuming a starting baseline of 100 lbs. This Java Calculator will help you determine your own increment, or number of months, or expected weight gain. http://www.fpsmith.com/calculator.htm

This reminds me of the old tale about the farmer who could lift his 85 lb new born Holstein calf. He figured that if he lifted the calf every morning, that by the time that cow turned one, he'd be lifting over 800 lbs!! Applying the formula above, that works out to be a 21% increment every month. Not recommended, for obvious reasons!

Which also reminds me of the exercise of reseting sales goals every year. Hmmm. :-)

I guess there are natural limits to exponential increases! The key is to set a reasonable (but challenging) goal, understand the milestones needed to check your progress along the way, and "resolve" to do what it takes to get there. And don't be too proud to reset your goals if you realize they were not feasible. Baby steps go a long way when you apply the power of the exponential.


January 12, 2005 02:48 PM EST Permalink

Personal Ad Personal

A personal ad seen in the Atlanta Journal:

"SINGLE BLACK FEMALE seeks male companionship, ethnicity unimportant.  I'm very good looking and LOVE to play.  I love long walks in the woods, riding in your pickup truck, hunting, camping and fishing trips, cozy winter nights lying by the fire.  Candlelight dinners will have me eating out of your hand.  I'll be at the front door when you get home from work, wearing only what nature gave me.  Call (404) 875-6420 and ask for Daisy.  I'll be waiting..."

Reportedly over 15,000 men found themselves calling the Atlanta Humane Society about an 8-week old black Labrador Retriever puppy...named Daisy.

I can relate (to the dog part, not the mentality of calling a singles ad)! We adopted a puppy in March of 2004, a Black Lab / Border Collie mix, that fits this description perfectly. Midnight welcomes me at the door everyday, often beating my two kids to get the first hug. He's a first-class member of the family.

Here are some other cute observations about dogs....

The reason a dog has so many friends is that he wags his tail instead of his tongue. -Anonymous

There is no psychiatrist in the world like a puppy licking your face. -Ben Williams

A dog is the only thing on earth that loves you more than he loves himself. -Josh Billings

We give dogs time we can spare, space we can spare and love we can spare. And in return, dogs give us their all.  It's the best deal man has ever made. -M. Acklam

I wonder if other dogs think poodles are members of a weird religious cult. -Rita Rudner

A dog teaches a boy fidelity, perseverance, and to turn around three times before lying down. -Robert Benchley

Dogs need to sniff the ground; it's how they keep abreast of current events. The ground is a giant dog newspaper,  containing all kinds of late-breaking dog news items, which, if they are especially urgent, are often continued in the next yard. -Dave Barry

Anybody who doesn't know what soap tastes like never washed a dog. -Franklin P. Jones

If your dog is fat, you aren't getting enough exercise. -Unknown

My dog is worried about the economy because Alpo is up to $3.00 a can. That's almost $21.00 in dog money. -Joe Weinstein

Ever consider what our dogs must think of us?  I mean, here we come back from a grocery store with the most amazing haul -- chicken, pork, half a cow. They must think we're the greatest hunters on earth! -Anne Tyler

Women and cats will do as they please, and men and dogs should relax and get used to the idea. -Robert A. Heinlein

Outside of a dog, a book is man's best friend.  Inside of a dog it's too dark to read. -Groucho Marx

Speak softly and own a big, mean Doberman.  -Dave Miliman

If you pick up a starving dog and make him prosperous, he will not bite you; that is the principal difference between a dog and a man. -Mark Twain

Dogs are not our whole life, but they make our lives whole. -Roger Caras

If you think dogs can't count, try putting three dog biscuits in your pocket and then giving Fido only two of them. -Phil Pastoret

My goal in life is to be as good a person as my dog already thinks I am. -an Ole Hoss


January 12, 2005 12:57 PM EST Permalink

20050110 Monday January 10, 2005

Original "Think Pad" Computers

As an Electrical Engineering undergrad, I worked for IBM for four semesters as an intern/co-op student back in the very early 80's in Boca Raton, FL, just as the first IBM PC was brought to market. It was an incredible experience, in many ways. Today, about 25 years later (wow, I can't be that old!!) I was cleaning out my attic, preparing to put back all the Christmas boxes for another year. I opened some of the boxes to figure out what I had up there... And came across something from my days at IBM. An original IBM "Think Pad". Measuring just 3" x 4.5", this is the pocket-sized progenitor of the now ubiquitous lap-sized room heater.

You know... there is something to be said for the utility and durability and availability and cost-effectiveness of the original. Where will your "modern" ThinkPad be in 25 years? I'll still have mine, and it'll still be as useful as it was in 1980 :-) No upgrades and no viruses.


January 10, 2005 12:53 AM EST Permalink

X10: Home Automation Personal

When we moved into our new home five years ago, I had grand visions of an automated home. I decided on X10, which is pretty much the standard for home control. X10 works by sending signals over the power lines in your house. Lights, fans, motion detectors and other devices plug into small modules that listen for and/or send X10 commands. Wall switches and dimmers can also be replaced by X10 versions, that allow for manual control or X10 signal control.

I bought ADI's (Applied Digital Inc) "Ocelot" X10 programmable controller, which sends control signals into the power line via a bi-directional TW523 powerline module. Here is the Ocelot manual:  http://appdig.com/manual/Ocelot-2.pdf

Using a GUI PC app, I designed the if/then ladder logic program and uploaded it into the Ocelot - to instruct it to manage about a dozen lights around our house... setting on/off and custom "dim" values based on daily dusk/dawn times. The controller accepted the latitude/longitude coordinates of our home so that it can automatically adjust timing based on variable sunrise/sunset times throughout the year! For example, about 30 minutes before dusk (the actual time varies from about 5pm to 8pm depending on the season: http://www.worldtime.com/dst/usa/orla.txt) the lights mounted in our china cabinet illuminate at 50% brightness, then down to 20% at 10pm, and off at midnight. I don't have to worry about seasonal drift.

Here's another advantage of X10. I installed a 500W halogen security lamp on the 2nd floor roof line, pointed toward the backyard. It's tied into a 110V circuit in the attic. But I needed the on/off switch installed next to the patio's sliding glass door. Thankfully, I didn't need to string a wire thru the walls... The switch simply sends an X10 signal throughout the house, to which the security lamp responds!

Most houses are designed with two different 110 "phases", from which 220V is derived for large appliances. X10 can have problems if the control signal is generated on the "A" phase, and the target device is on the "B" side. However, it is very easy to install a bridge amplifier in the circuit breaker panel. Here is a photo of my X10 bridge and a "whole house" surge protector. I live in the lightening capital of North America (Orlando) and have not had any surge related problems (yet).

It amazes me that I haven't touched the X10 controller in about four years! It just works! Lights go on and off or change brightness like clock work. About 50 months of continuous uptime and service!

I still intend on integrating my Ocelot into my RCS X10 Thermostats. I can include logic (if I want to) that leverages sensor data such as humidity and external temp and time of day to set the A/C set points. I also plan to tie it into my alarm system, so that when we leave the house (and set the alarm) the thermostats will adjust to save energy. Upon return (when we disengage the alarm), the thermostats respond accordingly. Also, if the sliding glass door alarm zone remains open for more than a few minutes, the A/C will be turned off (we have kids). http://www.smarthomeusa.com/ShopByManufacturer/RCS/Item/TX15R-B/

I also have a SpeakEasy module, which I hope to one day program to provide audio feedback based on certain events (eg: garage door left open past dusk, motion detector senses someone approaching the front door, the sliding glass door left open with the A/C on, etc). http://www.homeautomationnet.com/shopping/shopexd.asp?id=241. To be honest, I'm not happy with the audio quality of the SpeakEasy.  I expect I'll come up with a better solution that uses CD-quality MP3 clips.

Here is someone who has more throughly documented his home automation using the Ocelot. Someday, when I finish my automation project, I'll write up something like this. http://toddjreed.home.comcast.net/ToddsHAproject.pdf


January 10, 2005 12:08 AM EST Permalink

20050105 Wednesday January 05, 2005

Getting in Shape: 2005!! Exercise

Many of you have set a goal for 2005 to get back into shape! Unfortunately, most of you will conveniently forget your well intentioned desire by mid-Feb or so. In case this might help motivate you, I'll share part of the Exercise Program I created for myself. I originally created this a year ago, and actually stuck with it in 2004. I focused on cardio work last year (after spending the last 9 years traveling every week, doing little exercise, and eating out much of the time). I've updated it for 2005 and am adding strength training to the mix. I use body weight exercises where possible, many of which I can do in my garage or on the road (crunches, pushups, pullups, dumbbell work, etc). Anyway, here is a sampling.

This is my call to arms...


I've studied exercise physiology and believe this is a great strategy.... two days per week on Endurance, Power, and Speed based training. I'm not trying to win a race or get into body building... just tone up to a healthy state and then maintain. Here is my weekly routine:

Here are a few more details. If my Racquetball partners can't play, I'll Sprint or Spin on those days. I've listed my starting values, which will improve over time. The key is making small incremetnal gains. For example, if I just increase my 5K speed 0.2 mph per month, I'll reach my 2005 goal of a 23 minute 5K. Trying to build too quickly is a sure path to injury and frustration.

I also have some goals, and a graph that I'll use to motivate and chart progress over the year. You can tell I haven't focused on strength yet. I expect to make fast progress over the first few months, and then settle into a more sustainable progress mode. Be sure to understand the importance of "periodization": http://www.fitrex.com/periodization.shtml

If you're interested in a StarOffice copy of these images, to modify for your own use, please just ask. And keep with it.... You'll feel great after you *slowly* build up to your goals. Good luck.


January 05, 2005 06:52 PM EST Permalink


Valid HTML! Valid CSS!

This is a personal weblog, I do not speak for my employer.