Showing posts with label Linux. Show all posts
Showing posts with label Linux. Show all posts

Monday, May 4, 2015

HP: Memristors And Things Past


As noted in the latest issue of MIT Technology Review, HP’s research arm is making a major bet on memristors, seeking to deliver a major performance boost beyond the traditional processor/memory/disk hierarchy.  More specifically, as presented in the Review, HP would replace memory, SSDs, and disk with “flat” memristor memory, and then communicate within the new processor-memory architecture using optical-fiber-type light-speed technology rather than today’s slower-electron-speed technology.  In the Review, HP projects initial product ship as next year, although it appears from Wikipedia that 2018 is a likelier date.
It is exceptionally difficult to tell whether the resulting products would really outdistance SSDs and cables over the long haul, because HP is making its bet at an unusually early stage in the technology’s development.  However, my skepticism is not of the technology, nor of its potential to deliver major and scalable performance benefits beyond the transistors beloved of Moore’s Law.  Rather, I believe that a critical success factor for HP will be delivery of an operating system (HP has christened the concept The Machine, and the operating system Machine OS) plus the attendant compilers and interpreters.  To put it bluntly, HP has been late to realize that it needs software development savvy in its DNA, and past experience with HP software development suggests that even if the technology pans out, HP will probably fail at giving business and consumer customers a reason to insert Machine OS in place of the old-architecture operating systems.
Let’s dig further into the details.
More On Memristors

As Wikipedia notes, it is not clear even now that what HP is touting is indeed, strictly speaking, a memristor.  This matters only if, as fab facilities are developed and the technology tries to scale like the transistor, it turns out that HP’s technology is not only not a memristor but also cannot scale as the memristor should.  That’s one unusual technology risk for HP.
The second technology risk is that the actual “unit form” of the memristor memory has also not yet been specified and verified.  Apparently, a “crossbar latch” approach has been tested at a small scale with good results, but it is not certain whether that’s the best approach or if it will scale appropriately to memory chips.  If it does, HP estimates that 1 cubic centimeter can contain 1 petabit of memory (all accessible at the same tens-of-nanoseconds speed).
Other details of the memristor seem less relevant at this time.  For example, a true memristor effectively keeps a “memory” of past changes of state, so that, as with a disk but unlike with main memory, if you turn off the power and then turn it on again, the memristor will be able to recover its value at the time of shutoff (or previous values).  This type of “remembrance” does not seem important in computations, although it certainly might help with machine-learning experiments.
Remembering Itanium

Again citing MIT Technology Review, initial plans are to create a “Linux over memristors” OS first, called Linux ++, which would not be a “clean slate” optimization for the new “flat” memory, and then a version called Carbon that would be optimized for flat memory and open sourced.  Left unexamined are such questions as “Do I need to recompile my Linux apps so that they’ll work on Linux ++, as was the case between Red Hat and Novell Linux?”  If most apps must be recompiled, business use of the new OSes is probably in most cases a non-starter, and even cloud providers might question the business case.
We have been here before.  When HP committed to Intel’s Itanium line, I remember from my briefings that they did not at all appreciate the importance of having well-tuned compilers and interpreters with minimal recompilation involved from the get-go.  I believe that Itanium’s variable-length-word instruction set approach was a very good idea at the time, but without a clear transition strategy, HP’s effort to implement it was pretty close to doomed at the start:  it could never gain critical mass in the market. 
I see no indication yet that HP has the software-development prowess to succeed in an even larger app conversion.  This is especially true because HP’s tradition since the early ‘90s has by and large been “let customers pick other companies’ software where needed”, which is fine until you really need in-house software to boost your new hardware technology, and quickly.
Is The Era of the Hardware And/Or Services Critical Success Factor Over?

It is generally understood that HP is not in a great strategic position these days, having decided to split PC computing from the server side as two separate companies and with a small but consistent decline in revenues (together with a larger early dip in profits) in its immediate past.  I do not, however, view HP as wildly less successful than other of the traditional hardware/services-biased companies, including IBM.  There does, however, seem to be a continuum ranging from purer hardware/services offerings to predominantly software-related competitive advantage, and it correlates with revenue trends.  HP is down more than IBM, which does less well than Oracle, which does less well than Microsoft.  Apple may seem to be an outlier, with its smart-phone hardware, but the differentiator that allowed Apple to croak Nokia’s hardware focus was the swipe touch screen – software all the way. 
If I am right, then HP really needs to do something about innovative-software development.  If it were me, I’d bet the farm on a better form of agile development than other large firms are practicing, plus meshing agile marketing with agile software development in a major way.  Despite welcoming some major agile-development upgrades in firms like IBM, I believe there’s plenty of room for additional goodness.
Failing that, it’s hard to see how HP turns itself around, as one company or two, via the memristor route or something less risky, in the next few years.  To misquote Santayana, even those who have hardware that remembers for them are doomed to repeat software-driven history – and that ain’t good.

Friday, February 1, 2013

Why Can't the Mainframe (and the PC) Stay Decently Dead?


For more than 23 years, as an analyst, I have been watching various industry observers suggest that the end of the mainframe may be nigh.  For nearly that long, I have been hearing voices proclaiming the nearing death of the PC. For the mainframe, it was the proprietary architecture, the lack of developers, the aging of administrators, or the rise of scale-out.  For the PC, it was the expense of personal storage and its administration compared to the “network computer”, the lack of Web savvy, the large form factor compared to the smartphone, and the unaptness to touch gestures.

So what did the 2012 markets say?  Astonishingly, after a 10-20 % dip in revenues in the first 3 quarters, IBM saw a 56% mainframe-revenue jump in the fourth quarter, to overall revenue growth in 2012, better than the decreasing revenues of its Unix/Linux (System p) and Windows (System x) alternatives.  This extended the mainframe’s 3-year streak of revenue (and therefore income) growth. 

IBM was not alone in seeing these results.  HP apparently saw greater single-digit decreases in Unix/Linux than in PC revenues.  Anecdotal evidence suggests that Oracle/Sun Unix/Linux revenues continued to decrease.  And, of course, touch screen in a PC form factor had only just begun to arrive at the end of 2012 (with Microsoft Office in a hybrid tablet/PC configuration only apparently arriving some time in 2013) – so the PC was competing with smart phones and tablets with one hand tied behind its back, so to speak.

In fact, if 2012 was proclaiming anything, it was suggesting the eventual death of Unix/Linux (no, I don’t believe that either).

In an era in which IT is apparently content to spend the same amount each year on computing, much of it on saving costs – thus increasing computer maker profits but keeping revenues flat – it is not likely that any of today’s form factors, including the smart phone, is going to attain the 50%-+ growth rates that we have seen in the past.  Thus, we may have seen the popping of the Apple stock-market bubble. And therefore, in the near future, I assert that neither the mainframe nor the PC is going into terminal decline – on the contrary, they should prosper modestly, as the mainframe has done in the last 3 years.

So why will all the cited disadvantages of mainframe and PC not lead to steady or sudden terminal decline in the next 2-3 years, but rather to sober growth?  Let’s take each in turn.

The Mainframe Is Fully Reinvented

When I first suggested to IBM that the mainframe needed to become a “hub” in the sense of a fully networked node of especial prowess in certain types of workload rather than in the sense of “either mainframe or something else but not both”, it was only about five years ago.  Since then, the process of turning the mainframe into something that is a full participant in the enterprise architecture has been pretty completely achieved.  All of IBM’s major enterprise software, from administration to security to data management to development, now is on approximately the same track inside and outside the mainframe, and most apps can easily and even dynamically move between mainframe and non-mainframe servers.  As a result, users find it far easier to employ the mainframe flexibly for its strengths in robustness, security, and high-end transactional scale-up. 

Imho, IBM’s mainframe plans for 2013 contain no such dramatic transformations – and don’t need to.  The “bridging” architectures of zEnterprise and (eventually) of PureSystems form a completely adequate foundation for future elaborations in mainframe-including enterprise architectures.  To the end user, developer, and administrator, the mainframe if needed can appear more or less as a transparent part of a fully modern overall enterprise architecture. My only caveat, as noted before, is that the mainframe fails to support Windows in public cloud architectures adequately (again, imho) – but that simply limits growth, it does not portend decline.

And so, the old objections begin to melt away.  Few argue that the mainframe’s proprietary architecture cannot keep pace just as well in the near future with the evolution of hardware/software technology. IBM cites reports that a new generation of system administrators is arriving, with adequate skills, and therefore some new buys are even showing a preference for z/OS up front rather than Linux.  While the mainframe will never rival the hundreds of thousands of apps for Apple’s OS or Android out of the box, there are few major barriers to software today, either. 

To put it in a nutshell:  the mainframe is attracting new customers, even in the US, because the old knocks on the mainframe no longer apply, leaving it to leverage its strengths in a particular segment of the market that will grow with the growth of usage of Big Data.

The PC Keeps On Doing What It Does Best

The argument for the PC’s continued success is of a different sort from that of the mainframe.  I say, rather, that the doomsayers of the PC have not failed to appreciate adequately its long-term strengths.

Let’s start with the “network computing” argument.  Yes, as with the “dumb terminal” before it, the “network computer” is cheaper than the PC.  However, one value of the PC has been its ability to store personal data and applications, whether as a “home within an office” that allows the end user to generate his or her own Powerpoints and spreadsheets, or as a bridge between home and office to allow work wherever.  That is precisely why the countervailing trend of BYOD (Bring Your Own Device) – which is just as much if not more about laptops than smartphones and tablets – continues to ensure a major presence of PCs both at home and at the office.

As for Web savvy, once again the smartphone’s evolution has proven the value of personal physically-next-to-the-user storage – whether it be stored song downloads or phone logs – and hence the smartphone is turning inevitably into a PC – but one in which the small vs. large screen carves up turf between the PC blogger and the smartphone tweeter.  And, of course, my experience with Windows 8, wrong-headed as I believe some of Microsoft’s decisions are (e.g., crippling the desktop screen out of the box), shows that touch not only is valuable to the PC’s core word-processing and navigating/data-organization skills, but that it is not as easily applied to the smartphone’s small screen without a comparable, complementary typing feature (hunt-and-peck still doesn’t do it). And so, not only in terms of Web usage but also in terms of end-user-friendliness, the PC still holds its share of the market; and, for the same reasons, should continue to do so.

Note that I say that the relatively large form factor is a plus rather than a minus.  I assert that there is a “finger limit” in which the typing necessary to create large-scale amounts of real content can only be accomplished on a sufficient-sized screen.  Call it semantics, call it deep analysis, call it whatever you want, 50 lines is about the minimum for a decent blog post that does not amount to dipping your finger into a very large pool – and, as in this post, 2-3 old-style pages are more like a comprehensive look at a subject.  Note that folks like Paul Krugman use shorter blog posts as “riffs” to serve as the basis for a comprehensive multi-page paper, not as the definitive word on a subject.  A mashup is no substitute.  And so, the PC’s combination of personal storage and relatively large screen/keyboard should see continued modest growth in demand, in whatever form, over the next 2-3 years – depending, of course, on the world economy.

Sacrificing Some of the Future By Discarding the Present

I am long since resigned to periodic outbursts of “the death of …”, which sometimes are justified (I for one don’t lament the effective death of the dumb terminal, having had the dubious joy of programming for it).  What I do object to is the way in which these persuade many people in and out of the industry that the architectures in question are indeed dead, which means we don’t need to think about them, which means we don’t leverage their unique strengths in the next generation of the world-wide web of computing. 

Specifically, the mainframe pushes the limits of scale-up computing.  While scale-out grid solutions may indeed have achieved some notable successes (I understand that Google has made notable advances by thousands-of-servers divide-and-conquer applied to language comprehension and translation), on a per-processor basis scale-up’s tight integration continues to offer frequent performance advantages over scale-out’s loosely-coupled networking. 

On the PC end, the latest tablet/smartphone user interfaces are crippled by a lack of appreciation of foldering’s static personal data organization as a complement to the Web’s dynamic search-based organization. Moreover, we continue to move away from the idea of a “virtual end-user space” in which the full functionality and data of one’s own PC is available anywhere, any time, whether we are connected to the Web or not (and this will be needed because we are still quite a ways away from always-available and always-fully-functional/personalized Web avatars). 

Most of us remember the Monty Python routine in Holy Grail where one person attempts to fob off an alive person on a “dead collector”, while the corpse in question protests “I’m not dead yet!” To which the seller keeps replying “Shut up.”  For very good reasons, the mainframe and the PC refuse to stay decently dead.  Could we please not keep telling them to shut up?