GoogleIt Mail IT Print IT PermaLinkMy Take On 64 Bit Exchange 12, And It May Not Be What You Think
09:43:08 PM
Written By : Richard SchwartzCategory : IBM Lotus Notes And Domino
Location : Nashua, NH

By this point you've undobutedly read many different opinions about Exchange 12 going 64 bit and only 64 bit. The consensus in the Domino blogging community is that it's a bad thing for Microsoft to be forcing 64 bit operating systems on their users, and I don't completely disagree, but I'm a little closer to Carl's viewpoint than the consensus and I really think there's an important point that most people are not picking up on. I am convinced that neither technical benefits nor leveraging customers over to 64 bits are the whole story, or even the most important part of the story, of why Microsoft is doing this. I'll cherry-pick one part of one comment, made by Stu Mac as #26 in this thread in Ed Brill's blog to help make my point. Stu wrote:

So MS can spin this any which way they like, but it is still a major change that customers neither want nor need...

The emphasis is mine because that's my point. Microsoft will spin this. 64 bit E12 is as much about creating a customer perception of Exchange as being on the leading edge as it is about anything else, and it will be a huge gift to Microsoft if they can also spin it as being "a generation ahead" of Notes and Domino. We can say on our blogs that it's no more meaningful than saying that Exchange 12 "goes to 11", and we can say that it's not in customer's best interests... and we can say that customers aren't going to appreciate being forced to upgrade hardware, but -- whether we're right about all this or not -- we're still going to be on the defensive. We'll be on the defensive unless 64 bit processor support is an available option for Domino customers in the same timeframe as E12's release. IBM can publish benchmarks proving that 32 bit Domino outperforms and outscales 64 bit Exchange, but we'll still be on the defensive. IBM could even publish benchmarks proving that 64 bit Domino won't outperform 32 bit Domino (if it's really the case), but that would be a huge mistake that leaves us even more on the defensive.

The only way we won't be on the defensive is if we have 64 bit Domino, and no... 64 bit support on iSeries and zSeries will not cut it. It will have to be on x86 under Windows or Linux (or Solaris x86??) and running in 64 bit mode, not as a 32 bit app on a 64 bit OS in order to count. Yes, I know and you know, and IBM knows that a processor address-space size increase is not an immediate magic bullet. We all know that a 64 bit Exchange will not necessarily have any compelling superiority over a 32 bit Domino, and yes... Microsoft knows it, too. That will not, however, stop Microsoft from spinning it that way to customers, and it won't stop some customers from believing it. In fact, I think that a lot of people will fall for whatever Microsoft says about all the good things that 64 bit support will mean, and I'm not limiting that just to technically naive people. I think that a lot of technology decision-makers will take it as gospel.

Just think back to the jump from 16 to 32 bit, from Windows 3.1 to Windows 95, which wasn't really fully 32 bit, and to NT 4, which was. It's been a decade since the last time we went through a processor address space shift. Do you have a clear memory of it? Clear enough to remember how many problems it didn't make better, as opposed to how many things it did?

As much as I know that it wasn't all a bed of roses, I certainly do remember the good that moving to 32 bit did a lot more than I remember the not so good. I sure remember the expectations that were met (eventually) a lot better than the expectations that weren't met. And I'll bet my memory of what it was actually like is better than most. That's why the spin stands a very good chance of working.

This page has been accessed 623 times. .
Comments :v

1. Andrew Price11/18/2005 01:06:00 AM

I concur. I hope IBM/Lotus provide a 64bit-intel-Windows server version, I am less concerned about the client. :)

2. Carl tyler11/18/2005 08:38:22 AM

Nicely put.

3. Greg Walrath11/18/2005 01:02:30 PM

Yup, that's going to be the whole thing, as always - MS spinning it. We're an Exchange shop here and, sad to say, we've gotten used to the idea of migrating to new hardware and software with each upgrade. As near as we can tell, and this is with help from Micorosoft tech types who work just a few minutes from here, it's not possible to upgrade an existing Exchange server. You have to build a new box and migrate the users from the old to the new.

The counter-spin? Keep pushing against the negative and the assumptioms. So it's 64-bit - what does that mean? Where are the real-world performance numbers? E12 will still run on a hacked-up version of Access for the data store. The clustering model is still Windows-only, and still a shared-data, active/passive model. You still have to restore the entire data store to recover one lost message or mailbox.

4. Nathan T. Freeman11/21/2005 05:43:43 AM

Actually, not only should IBM see what it can do with an Intel 64-bit release, but it should ALSO be pounding the drum on the iSeries/zSeries existing 64-bit code. "Ah, we see Microsoft is, once again, playing catch up!" *That* would be going on the offensive.

A further consideration: if they have a version that runs on, say, SuSE 64, and it refers to itself as "Domino 64," how would you be able to tell it WASN'T just thunking?

5. Richard Schwartz11/21/2005 06:50:19 AM

@Nathan: API programmers would be able to tell quite easily by examining addresses in the debugger.

6. Nathan T. Freeman11/22/2005 01:46:08 AM

@5 And so it would be necessary to check via a debugger. But Ed has already stated that the Domino versions for 64-bit platforms are 64-bit. Just that they don't use 64-bit optimizations. He's mentioned that he thinks this is true of even one of the Linux for Intel platforms.

I'm just wondering if there's a way to see a difference in that. I mean, I guess the only way to do it would be to load up one of those platforms, stuff 8GB of RAM into it, run Domino, and see if there's something that makes you go "ah, this is a 64-bit poseur!" It would take someone far more knowledgable about low-level computing than I.

But it would be interesting, since if you can't point to a specific lack, then Domino's already far ahead of the MS curve.

7. Richard Schwartz11/22/2005 07:16:59 AM

@6 At that level, the something you look for is very simple: Does a single Domino partition use more than the approximately max 2 GB of RAM that is the max that it uses on 32 bit Intel, or not?

8. Bob11/22/2005 08:02:40 PM

This is not spin. The benefits to going 64-bit are substantial.

As an example, look at the numbers from the folks on running x64:

As mentioned in the article, 32-bit code can benefit from Windows Server x64. A 32-bit process gets a full 4GB address space to use running under WoW64. But to really exploit large caches, you need a 64-bit app.

IBM has Websphere 6 64-bit edition for Windows 2003. I wonder why Domino hasn't done the same? If a 64-bit native version of Domino did not outperform a 32-bit version, then something would be seriously wrong. Databases or database-like applications such as Domino should always be able to advantage of more cache memory.

9. Nathan T. Freeman11/23/2005 04:15:48 AM

Well, wait just a minute... The UNIX and OS/400 versions of Domino are clearly not limited to 4GB of RAM. Are they limited to 4GB PER PARTITION? That's possible, but in that case, Domino's been leveraging 64-bit architecture for, what, 5 or 6 years now? Yes, running multiple partitions on the same hardware platform is not the same as leveraging the larger memory space available on a single instance, but given Domino's clustering model, this isn't exactly a weak implementation of the principle either. Certainly not when you consider that IBM's been doing this over and over again for thousands of customers for half-a-decade now.

"Exchange 12 will only run on 64-bit platforms to leverage the increased performance capabilities of added address space" vs "Domino has been running on 64-bit platforms for the last 5 years, with over 20 million users supported on these platforms" is a pretty powerful comparison. Add to it "as soon as Microsoft makes a 64-bit server operating system available, Domino will be there to leverage it, just as IBM has done with every Microsoft operating system upgrade in the past." For good measure, tag on "We have already done this with certain Linux implementations which are ahead of the curve on the x86 platform."

Who's spinning now?

10. Richard Schwartz11/23/2005 11:43:16 AM

@Bob -- thanks for chiming in. I didn't mean to imply that 64 bit Exchange was all about spin. Of course for the segment of customers where scalability and performance concerns are highest, 64 bit architecture can offer improvements. I think you would agree that such improvements are not automatic to an application, particularly those that have gone out of their way to implement their own buffering strategies rather than leaving that job entirely to the OS. And I think, Bob, that if it is true that Domino's buffering would have to be adjusted to take full advantage of 64 bit, it's rather unfair to call it "seriously wrong" when the fact is that the buffering strategy was very deliberately designed to take best advantage of multiple 32 bit platforms with all their different memory management models. I suspect that we will indeed see 64 bit Domino, and we'll probably be able to thank the Exchange team for forcing the issue. I say that still believing that the benefit to most customers will be minimal, but the spin wars take place at the level of the 5% or fewer of customers who will really want to push the envelope.

@Nathan: My understanding is that the Unix versions of Domino are 32 bit code running on 64 bit operating systems. Only Domino for iSeries (and possibly zSeries -- conflicting info on this) is a true 64 bit port. None of the x86 Linux versions is 64 bit, but the z-Series Linux version might be (again, conflicting info on this). My doubts as to whether Domino will gain any automatic beneifts from 64 bit on x86 come from what I've been told were the results of tests running on versions of Windows that support for larger memory (i.e, with /3G and PAE), which were marginal improvements at best. I don't know enough about what the changes are to memory management, and particularly shared memory -- which Domino makes a lot of use of, and which is known to be one of the more significant limiting factor in scalability of a single Domino partition in the 32 bit world -- to really make any predictions about what benefits Domino will get automatically from a recompile. Given that 64 bit code exists for iSeries, I think it's reasonable to expect that the main problem IBM will face in porting it to x86 platforms will be QA. I highly doubt that IBM will abandon 32 bit versions any time soon, so every 64 bit version that they certify will represent a significant increase in their QA requirements.

11. Nathan T. Freeman11/24/2005 09:28:14 AM

Agreed on the QA issue.

Frankly, I think that if they wanted to -- basically if marketing thought they could extract enough value out of it -- IBM could beat MS to market with a full 64-bit version on x86. While I'll typically be the first to admit that QAing a new Domino release is no small task, when you consider the number of platforms that it's currently on, AND that there's already a 64-bit version on iSeries, it's not like they have to go figure out how to make it work on BSD. There's a good amount of that test planning that's got to be already finished.

Actually, as I type this, I'm thinking that there's some group of 3 or 4 people in Westford following MS's press, and they've probably already tried this out. I bet you there's some box running there already using 64-bit addressing on x86.

You know I'm right.

12. Richard Schwartz11/24/2005 11:08:26 AM

@Nathan: it wouldn't surprise me one little bit. (Or 32 little bits )

13. Bob12/02/2005 07:30:45 PM

@Richard: When I said "If a 64-bit native version of Domino did not outperform a 32-bit version, then something would be seriously wrong" I meant a version of Domino that could actually take advantage of gobs of extra memory. I'm in no position to say whether that's an easy port or not. An app that's designed to work in a memory-constrained environment might take some work to make use of a 64-bit environment. Sort of like those old DOS programs ported from extended/enhanced memory to the 32-bit world.

Wow, did I just say that 2/3GBs of RAM was memory constrained? It's all a matter of perspective: someone running IBM Workplace on an x86 box might chime in and say "64-bit addressing? It's about time!"

14. Richard Schwartz12/02/2005 09:32:34 PM

@Bob: I think we actually agree more than we disagree, but I'm still going to take issue with "seriously". Why? Because as I'm sure you're very well aware, there are always multiple bottlenecks lurking in any architecture, and the art or sicence of improving performance and scalability boils down to answering the question of "what's the next bottleneck and how do we get past it"? Some bottlenecks can be pushed out simply by increasing hardware resources. Some others can't. The job of the folks working to make Domino scalable has always been to optimize architecture so that all of the bottlenecks in the latter group are pushed far enough out that they are beyond the point on the performance graph where the former group of bottlenecks go asymptotic. You can't do any better until a new generation of hardware and OS comes along. To paraphrase Donald Rumsfeld (and I can't believe I'm doing this!!!), you optimize for the enviroment you have, not the environment you want. It's a missallocation of resources to try to optimize for an idealized environment, and frankly it's probably not going to work out well in the environment that you have.

Now, you could argue that IBM should have been anticipating the rise in demand for 64 bit hardware and OS and should have been working on architectural changes that would push out all bottlenecks beyond the new hardware and OS limits, but I think IBM has been looking at it rather differently. I think they've been anticipating the rise in demand for higher scalability. They've been anticipating that for a very long time, and they've been addressing it. They delivered major improvements in scalability in Notes and Domino 7, and they did it without the benefit of 64 bit address spaces. I have no idea how they did it.

Now, let's say that they take what they've got, they port it to 64 bit, and they change their buffer management to take advantage of a larger address space, and all that does is expose the fact that there was an non-memory-related architectural bottleneck masked but lurking 3% beyond the point where memory-related limits went asymptotic. Is that something "seriously wrong"? I say no. I say it's just the result of an architectural choice that did exactly what it was supposed to do. It achieved very high scalability in the supported operating environment. It could be a CPU bottleneck, a disk i/o bottleneck, or a network i/o bottleneck, and in any of those cases the upgrade to 64 bits will have minimal impact and it won't be something "seriously wrong". Frankly, it will be the result of something that was "seriously right" about the way they approached scalability on 32 bit platforms.

15. Bob12/05/2005 08:36:19 PM

@Richard:, maybe "seriously" is a bit much. It could take a rethink for Domino to really take advantage of substantially more physical memory -- which is mostly what we're talking about here, not how big a pointer is. If my diminishing recollection of the Domino architecture is any guide, there are plenty of things down in the bowels that would love to be cached but aren't for memory resource reasons.

16. Elijah Lapson12/27/2005 10:03:40 AM

It seems as if it would not take a huge amount of resources to port the Notes/Domino Code over to x86-64. While available in the 64Bit variety under proprietary OS sytem from IBM/SUN it would be nice for organizations with smaller hardware budgets to have the option of running x86-64 based Domino servers on Windows and Linux. I can not imagine the ported code would not have significant performance increases for relatively little porting effort.


17. Richard Schwartz12/27/2005 11:16:27 AM

@Elijah: It's easily imaginable that there may be little immediate performance improvement, and I've pretty much laid out the reasons above. I still think they should do it, and then start working on getting whatever performance gains are possible.

18. Steve Cogan03/31/2006 08:27:37 AM

I agree with a lot of what has been said - especially the allusions to the Rumsfeldian, "There are known knowns; there are things we know we know. We also know there are known unknowns," relating to what would actually happen implementing Domino on x64 Intel platforms - i.e, removing some limits may open up other limits we don't yet know about!

In my experience one of the main limiting factors of Domino scaling on a 32-bit W/Intel platform has always been the 'page-pool' issue discussed in this IBM technote: {link}

I've explored this issue up close with Notesbench benchmarks on large Domino/Windows systems and have to admit I'm actually 'excited' (hard for a Brit to admit!) that R70.2 will support Domino on x64 platforms.

**In theory** the 'page-pool' limitation on Domino managing large amounts of open-databases has been blown away.

The difference between Domino running in 64-bit 'compatibility' mode on x64 and a 'full' 64-bit Domino release will probably be full memory addressing.

However - an interim workaround for getting Domino to address more physical server memory for x64 in R7.02 (before the 'full' 64-bit release in Domino 'Next') would be, as discussed earlier, use of partitioned servers.

By using multiple Domino partitions, I've seen Domino address way more than the theoretical 32-bit limits in my tests.

Any thoughts?

Steve. (PCLP R5/R6)

Enter Comments^

Email addresses provided are not made available on this site.

You can use UUB Code in your posts.

[b]bold[/b]  [i]italic[/i]  [u]underline[/u]  [s]strikethrough[/s]

URL's will be automatically converted to Links

:-x :cry: :laugh: :-( :cool: :huh: :-) :angry: :-D ;-) :-p :grin: :rolleyes: :-\ :emb: :lips: :-o
bold italic underline Strikethrough

Remember me    

Monthly Archive
Responses Elsewhere

About The Schwartz


All opinions expressed here are my own, and do not represent positions of my employer.