CFD simulations involving 3D complex geometry have become the norm, however, this hasn’t lessened the…
Deciding between Open Source and Proprietary CFD software
Companies are deploying open source CFD software in a range of different ways. Although we know of no formal measures available, it seems from anecdotal evidence that it’s use is growing. We often encounter companies in the process of either making the decision to switch to open source CFD software or after the decision has been made and are already in the process of migrating away from proprietary software.
At Applied CCM, we employ a mix of proprietary and open source software to satisfy our CFD needs. We also provide a mix of open source and proprietary solutions to our customers. We sell and support the proprietary software Pointwise for mesh generation and Suggar++ for overset grid assembly. On the other hand we develop the open source software Caelus and provide training support and development services for Caelus and OpenFOAM. When deciding to use open source or proprietary software we undertake a Total Cost of Ownership analysis and suggest our customers do so as well.
The primary differences between open source and proprietary software are the cost of the licences and the conditions for use of the licences. The copyright of open source software belongs to the author (or a third party, for software like OpenFOAM) rather than the vendor. There are a variety of open source software licences but they are all premised on the author (the ‘licensor’) giving some fundamental freedoms to the user (the ‘licensee’) inside a licence agreement. These freedoms are:
- to study how the software works,
- to access the software code,
- to modify the code according to specific requirements,
- to run the software for any purpose on any number of machines,
- to redistribute copies of the software to others.
The freedom to run the software for any purpose on any number of machines can amount to significant cost saving and is often the major reason for a company adopting open source CFD software. The Open Source Initiative (OSI) has collected copies of various open source licences, and the conditions of the use of these licences is collated on the OSI website.
What is Total Cost of Ownership (TCO)?
Total cost of ownership refers to all the costs associated with the use of computer hardware and software. This would include administration, licencing, hardware and software updates, training and development, maintenance, technical support and any other associated costs. Total cost of ownership analysis serves as a planning and decision making tool.
You may find claims that the use of open source software has a lower TCO than proprietary software and counter-claims that open source has a higher TCO. The distinction between these different TCOs is that
- TCO using proprietary software sees an emphasis placed on the purchase of software licences; whereas
- TCO using open source software sees an emphasis placed on the investments in people rather than licences.
Rarely, however, are there documented claims that TCO will remain the same irrespective of the use of proprietary or open source software. This however may be the case during the transition from proprietary to open source software. That is, there would be reallocation of resources previously used for purchasing software licences and maintenance agreements, to purchasing ‘expertise’ and investment in ‘training and professional development’ which is required support the use of open source software. While licence costs are reduced using open source software, at least in the short term, these savings are actually transferred to ‘people costs’. As such, it is unlikely there would be short term net financial saving moving to open-source.
In the long term, as the ‘people’ become skilled with the open source software, training and professional development costs diminish decreasing its TCO. Furthermore, historical evidence shows proprietary software licence costs have a tendency to increase over time increasing the TCO for proprietary software. Therefore, differences between open source and proprietary software should not simply focus on the present.
Making choices about software then becomes a cost/benefit/risk management question, where considerations include both the quantifiable and intangible costs, benefits and risks. The tables below show some of the benefits, costs and risks associated with both proprietary and open source software. These tables are by no means complete but serve to provoke thought on the issues associated with both.
Costs and benefits of proprietary software
Benefit | Cost | Risk |
---|---|---|
Software fit for a given purpose | License purchase and maintenance | End of Line, i.e. the software is no longer available. |
Regular upgrades available | Training costs | Slow development and feature addition. You may not get that bug fixed or that feature added when you need it. |
Documentation | Determining which software to use | Vendor lock-in |
Ease of installation | Internal support costs | Have to trust implementation |
Vendor support | ||
Useability |
Costs and benefits of open source software
Benefit | Cost | Risk |
---|---|---|
No license costs | Training costs | Robustness |
Skill transfer | Development costs if software not quite fit for purpose | Viral nature of the GPL |
Peer support groups via community | Determining which software to use | Backwards compatibility |
Increases software reuse | Internal support costs | Useability |
Freedoms offered by license | External support costs | |
Able to take advantage of paradigm shifts | Requires different skill set from users. | |
Not bound by vendors choices e.g. operating system support | ||
Enables best-of-breed solutions. Pull from a multitude of projects and customise as necessary. |
While TCO analyses tend to be comprehensive, there are aspects to choices about the deployment of software that do not easily get addressed in TCOs, yet are important issues. These issues include:
- the degree of scalability and modularity software may have;
- the integration capacity of different pieces of software;
- the cost of vendor ‘lock in’ and the implications for a company over time;
- the cost of reversing ‘lock in’;
- the degree of reusability of software; and
- the potential for paradigm shifts over time.
We recommend that companies perform due diligence in their research. Don’t just follow the status quo and get locked into CFD software that might not be right for your business five years from now. ’Most expensive’, ’most well-known’ or ‘most popular’ doesn’t necessarily mean most suitable.