OpenMPI v1.X vs v2.X - What are the main differences? - mpi

Many systems (e.g. Google Cloud Compute instances) come pre-installed with OpenMPI v1.X.
Since v2.X has been out for a while, is it always preferable to upgrade and use that instead? What are the main differences? Is there a difference in general performance and stability? I have been looking for this information everywhere but besides the detailed and incremental change lists I can't find a general overview.

Mostly adding MPI-3 features, deprecating support for older systems, and better support for MPI-IO (moved from ROMIO to OMPIO).
More info is available in these slides presented at the Supercomputing 2014 conference.

Related

Can someOne tell me a brief Comparison between versions of LCDS

We are using Adobe LCDS 2.1 and thinking of Upgrading it to a higher version.. can someone tell me a brief Comparison of the LCDS versions available (3.1 , 4.1....) ????
The last version is 3.1 You need to read the documents from this url in order to understand what are the new features (the release is good but is not enough), and after that it would be good to try building a prototype (if you plan to use the data modeling for example) to see how they will fit into your current architecture.
I wouldn't do any upgrade unless there is a business reason (bugs, poor performance, luck of productivity) - for any product.
I don't know why you'd need a comparison for 'all versions' if you can only purchase the latest one. I suggest you look at the latest version's whitepaper so that you can see what's been added. The biggest thing IMO is better integration for all clients, different messaging protocols and well as much needed bug fixes (I remember 2.1 had some fairly obvious bugs).
Looks like the choice is "should we upgrade or not?"
I'd say it may also be worth considering what you're doing with LCDS -- if you're only using it for things like Flash Remoting, is it possible that you could go the other route and 'downgrade' the the open source BlazeDS? It has a lot fewer features, but might do what you need, and be a lot cheaper.
Here's a comparison of BlazeDS to LCDS ES2: http://www.adobe.com/products/livecycle/dataservices/compare.html
I'm not familiar with prior releases of LCDS, so I can't offer any better advice about comparing versions than the previous respondents. Basically: Check the release notes =)

What are the leading CF alternatives available for Coldfusion + Flex integration?

(Possible alternatives being Adobe's CF, Bluedragon, Railo, etc.)
What would you use for Coldfusion middleware if you had the following requirements and major considerations:
Flex front end (w/remoting via AMF)
Free (or low cost enough for a non-profit side project)
Large enough community and resources online to find assistance when needed
Maturity (and confidence that a particular version of CF isn't going to turn legacy any time soon)
MySql database
I think Adobe CF would tick all your boxes except your 'free' requirement. We use BlazeDS and Flex with it, it's mature, well supported and has a large friendly community. In short it works great.
However, in terms of the licence cost there is an argument that CF has a lower cost of ownership but if paying anything is a big no-no, then I'd look at Railo - it's pretty much up to CF 9 standard, it's got paid support if you get really stuck and it has some active forums.
Hope that helps.
PHP is an another alternate for a back-end. It talks to MySQL and can do remoting with Flex. It does require a bit of configuration to get remoting work, but it does work.

Patch vs. Hotfix vs. Maintenance Release vs. Service Pack vs

When you are somewhere between version 1 and version 2, what do you do to maintain your software?
The terms Patch, Hotfix, Maintenance Release, Service Pack, and others are all blurry from my point of view, with different definitions depending on who you talk to.
What do you call your incremental maintenance efforts between releases?
When I hear those terms this is what comes to mind:
Patch - Publicly released update to
fix a known bug/issue
Hotfix - update to fix a very
specific issue, not always publicly
released
Maintenance Release - Incremental
update between service packs or
software versions to fix multiple
outstanding issues
Service Pack - Large Update that
fixes many outstanding issues,
normally includes all Patches,
Hotfixes, Maintenance releases that
predate the service pack
That being said that isn't how we do updates at all. We just increment the version and/or build number (which is based on the date) and just call it an "Update". For most software I find that easier, you can easily see that one computer is running 1.1.50 vs 1.2.25 and know which is newer.
A hotfix is a fix for a specific issue which is applied while the system is still active (hot). This comes from the older terms like hotswapping and hotswitching. Yes, the term is commonly misused these days by people not involved in the industry.
I'd like to point to http://semver.org/ for an attempt to define version numbers in sane manner, and the definitions given there actually fit closely to how I use version numbers (or how I wish I used them :))
As for the term definitions, I find patch and hotfix very similar, except "hotfix" is usually not broadcast if done to a service.
Maintenance Release and Service Pack fit fairly closely to the two denominations of version numbers. if you have a version number structure like X.Y.Z, Maintenance Release would be the Z, Service Pack would be the Y. I've really only heard these terms in big, corporate products, though. I'm more acquainted with the minor/mayor version terms.
Of course, every shop has their own use of the terms, and it depends on which type of user you're targeting. For end-users of MMOs, for instance, every update is a "patch" because the user has to "patch their client" to apply it, while for end-users of more common software, you often just have the term "update" and "new version" (new mayor version).

Any experiences with Websphere Integration Developer (WID)?

My company (a large organization) is developing a "road-map" for evolving their rather old, tangled confederation of systems to an SOA model. A few people are pushing hard for using Websphere Integration Developer and Websphere Process Server as the defacto platform for developing future applications...because they feel IBM is a stable vendor, the tools are made for the enterprise, they drank the "business agility" BPEL kool-aid, etc.
Does anyone have positive or negative thoughts on this platform? Do the GUI tools help eliminate monotonous/redundant coding...or just obscure things and make things harder to maintain? Basically, do the benefits justify the complexity?
My experience with the IBM Java tool set is pure pain. Days to install lots of different versions of different components all incompatible with each other, discover a bug in component A get told to update to see if it fixes, updating component A breaks component B and C, get told to update these etc.
I find Eclipse with out the IBM extensions far more stable and quicker and provides more features (as its stable versions are a couple releases ahead of WID/RAD).
I would advise against going the IBM way for development tools. As for process server I have less experience but the people in my team using it seemed to enjoy it as much as I enjoyed WID. not a lot.
So far I havent been impressed by any tools with the "SOA" and/or "BPM" labels on them. My "roadmap" would be very very iterative to see some results with the archetecture as fast as possible while trying to grab some of the easy fruits. That way you gain your feel for what works for you and your people.
I would never let any vendor push me anywhere in the "scuplturing" of the architecture.
I agree with other users complaining about WID. The only reason we are using WID is that a decision was made a while back to use IBM products across the board by our sales department.
That's right, our sales department made the decision to use IBM products.
Development has been painful and frustrating. We have lots of stability problems with Process Server, sometimes it doesn't want to start or shutdown properly. Yeah you can easily draw processes in the IDE, but most any toolset provides that functionality these days. It is nothing special or unique to WID or IBM. IBM is a few iterations behind mainstream.
There are plenty of open source implementations out there that offer great support. Checkout JBoss or RedHat, they are pretty good. If that doesn't float your boat, you can always use Apache tools.
Walter
Developers don't choose WID, WMB, or WPS. Managers do, because IBM is a "stable vendor".
Look at JBoss, or K.I.S.S.
WID/WPS is actually pretty simple. The original intention was for analysts and business people to "compose" services (DO NOT LET THEM DO THIS!) so the UI is simple and easy.
Most of the work will be in defineing and implementing the back end services which depending on the platform will mostly involve wrapping existing code in SOA service.
The most important thing to bear in mind is that SOAP is technoligy and SOA is an architecture and a state of mind.
There is a zen to a succesful SOA implementation. Its all about "business services", if you have a service that you cannot describe to a business user in less than six words you have done it wrong! Ideally the service name alone should be enough to describe the functionality of the service.
If you end up with a service called "MyApp.GetContactData" described as "get name, addresses tel fax etc." then you are there. If You have a service called MyAppGetFaxNoFromOldSys" described as "Retrieve current-fax-nmbr from telephony table in legacy system" you are doomed!
Incidently most of the Websphere tooling for WS* is pretty nice. But I would recommend the very wonderful SAOPUI tool from http://www.eviware.com which is very good for compsing/reading WSDL based messages and also function as a useful test client or server.
Do the GUI tools help eliminate monotonous/redundant coding...or just obscure things and make things harder to maintain? Basically, do the benefits justify the complexity?
As a Developer, I find the tools at varying levels of being bug free. 6.0.1 was a pain, 6.2 is so much better. But once you develop with the tool, there is minimal effort to maintain it. I develop in hours what java developers take days to do. It is also easy to maintain as changes can be made very quickly. I cannot answer your question from the perspective of an architect or a Manager but i would agree with comments of some others here.

FOSS ASP.Net Session Replication Solution?

I've been searching (with little success) for a free/opensource session clustering and replication solution for asp.net. I've run across the usual suspects (indexus sharedcache, memcached), however, each has some limitations.
Indexus - Very immature, stubbed session interface implementation. Its otherwise a great caching solution, though.
Memcached - Little replication/failover support without going to a db backend.
Several SF.Net projects - All aborted in the early stages... nothing that appears to have any traction, and one which seems to have gone all commercial.
Microsoft Velocity - Not OSS, but seems nice. Unfortunately, I didn't see where CTP1 supported failover, and there is no clear roadmap for this one. I fear that this one could fall off into the ether like many other MS dev projects.
I am fairly used to the Java world where it is kind of taken for granted that many solutions to problems such as this will be available from the FOSS world.
Are there any suitable alternatives available on the .Net world?
As far as Velocity is concerned I have heard some great things about that project lately. It's still in the developing stages and probably not primetime ready yet. But I think the project has a solid footing and will become a strong mature product from Microsoft and not fall off into the ether like you predict.
Recently I've heard podcasts from Scott Hanselman and Polymorphic Podcast regarding Velocity.
BTW Windows Server AppFabric is out of beta. That's what i mentioned in my previous post.
here is the link on general availability;- http://blogs.technet.com/b/appfabric/archive/2010/06/07/windows-server-appfabric-now-generally-available.aspx
which specific features do you think one can get on NCache and not on AppFabric?
Just a quick update on this thread for the sake of completion.
Velocity (now known as Windows Server AppFabric) is already out in the production and offers a great distributed caching platform. More details are available on the msdn site
http://msdn.microsoft.com/en-us/windowsserver/ee695849.aspx
Although Velocity has made progress from CTP1 to CTP2, it still leaves much to be desired. It will be some time before they provide all the important features in a distributed cache and even longer before it is tested in the market. I wish them good luck.
In the meantime, NCache already provides all CTP2 & V1, and many more features. NCache is the first, the most mature, and the most feature-rich distributed cache in the .NET space. NCache is an enterprise level in-memory distributed cache for .NET and also provides a distributed ASP.NET Session State. Check it out at Distributed Cache.
NCache Express is a totally free version of NCache. Check it out at Free Distributed Cache.

Resources