Subscribe options

Select your newsletters:

Please enter your email address:

@

News & Media

Latest ITER Newsline

  • Cryostat base insertion | "A moment that will live in our memories"

    In the closing scene of the 1977 movie Close Encounters of the Third Kind, an alien spaceship hovers above an anxious and awestruck crowd of scientists and engi [...]

    Read more

  • Cryolines | Another day, another spool

    Having wedged his body and equipment into the cramped space between the ceiling and the massive pipe, a worker is busy welding two cryolines spools. A few metre [...]

    Read more

  • Image of the week | Bearings unveiled

    The construction teams are in the last stages of preparing the Tokamak pit for the first major operation of ITER machine assembly: the lowering of the cryostat [...]

    Read more

  • Technology | Perfecting tritium breeding for DEMO and beyond

    While ITER will never breed tritium for its own consumption, it will test breeding blanket concepts—the tools and techniques that designers of future DEMO react [...]

    Read more

  • Fusion world | Japan and Europe complete the assembly of JT-60SA

    The JT-60SA fusion experiment in Naka, Japan, is designed to explore advanced plasma physics in support of the operation of ITER and next-phase devices. After s [...]

    Read more

Of Interest

See archived entries

Software

ITER's healthy reliance on open source

Pat Brans

A long-time user of open source, ITER does not stand alone—far from it. Virtually all Big Science projects in the world are big users of public domain software. Some have even decided recently to "up the ante" and move still further away from commercial products.

ITER, like many large science projects, relies on open source software for applications where controlling the source code is beneficial ... even essential. But for applications related to nuclear or personal safety, certified software programs are preferred. (Click to view larger version...)
ITER, like many large science projects, relies on open source software for applications where controlling the source code is beneficial ... even essential. But for applications related to nuclear or personal safety, certified software programs are preferred.
Why do Big Science projects use open source? Three of the biggest reasons are:

  • To have complete control over the software: For any software that controls essential equipment, an organization needs to have access to every bit of source code that goes into the executable software. This allows the organization to completely debug the system—and it also minimizes the possibility of introducing malicious code that can't be easily spotted.
  • To guarantee availability of the software over the project lifetime: The lifetimes of Big Science projects are much longer than the lifetimes of most commercially sold software. Five years from now, some of the products sold today will be obsolete, or dramatically different. With access to all the source code, researchers can use open source software as long as they want.
  • To eliminate the potential for runaway licensing costs: When an organization relies on commercial products, vendor lock-in can become a problem. The vendor may raise the price of the software or introduce configurations that change the pricing structure at the expense of the buyer. A case in point is CERN. Microsoft recently changed software-licensing conditions, increasing software expenses for the research organization. In response, CERN began its "Microsoft Alternatives" project, which aims to replace commercial software with open source as much as possible.
Open source is still not appropriate in all cases

But open source is not completely free either. The biggest cost is in keeping the in-house expertise needed to maintain and administer the software. For important projects, a popular approach is to hire one of the core developers of the system in question—exactly the approach ITER took when it hired Ralph Lange, a key EPICS developer.

"EPICS, which stands for Experimental Physics and Industrial Control System, is a set of software tools that can be used to build control systems for use on any scale, from very small experiments to machines as big as ITER," says Lange. "Because it is open source, EPICS is developed by a lot of very good software engineers from around the world. It is widely tested, debugged and validated. We use it as the basis for CODAC at ITER."

"One reason open source is essential for our control system has to do with cyber security," says Lange. "You have to be able to say that you compile everything from source code to rule out the introduction of malicious code in modules for which we have no visibility. This is a big reason 100 percent of the software running on the machine will be compiled from source."
Another open source platform ITER uses is TensorFlow. Developed by Google for machine learning, TensorFlow is designed to help both researchers and developers. Developers use it to build and deploy applications based on machine learning; researchers use it to build and train machine learning models and neural networks for experimentation.

"We use TensorFlow to make sophisticated physics models run ten million times faster," says Simon Pinches, the scientist responsible for the integrated modelling program at ITER. "You take one of the models and run it many times over some domain, using all the possible numbers you think it will have to observe. Then you apply the input and output data to TensorFlow, which develops the neural network that produces the same results super fast."

A third important piece of open source software ITER uses is Git, the most widely used source code management tool today. Because so many different people contribute to the software used by ITER, a solid source code management tool is essential. "Git is a really significant piece of software for us," says Pinches. "But it's often overlooked because it's very low down in the chain."

EPICS, TensorFlow and Git are not the only open source platforms used by ITER. Linux is another public domain platform used at ITER. Moreover, almost all the software run on the Linux systems is open source. "Open source tends to be very good software," says Pinches. "Lots of people working on one product will develop a better product than a few people working on lots of separate products."

But open source cannot be used everywhere. For all its advantages, one area where open source is inappropriate is in cases where nuclear or personal safety certification is required. The certification processes are too expensive to be taken on by anybody other than software vendors that will sell the software to a number of organizations.

For these cases, ITER relies on specialized software vendors that sell industrially certified or nuclear-certified solutions. So for example while the plasma control system uses open-source EPICS software, the machine protection and safety software within which the plasma control system operates is nuclear certified and not open source.

Some good reasons to actively participate in the open source community

Lange says there are two reasons large organizations that rely heavily on an open source platform hire key developers. "First it ensures they have somebody to fix things; and second, it gives them somebody who can feed requirements to developers to make sure the code goes in the direction they need."

Helping steer EPICS in the right direction is one of the reasons ITER stays active in the open source community. In June 2019, ITER hosted a weeklong EPICS collaboration meeting, where users not only exchanged best practices, but also provided feedback to developers. About one hundred people from around the world attended the meeting.

ITER will continue to use open source and influence the direction of relevant platforms. Even though the project is more on the user side than on the developer side, that could change one day. Big Science projects don't always remain just big users; they sometimes also become big contributors. After all, the World Wide Web was invented at CERN in the late1980s—and then in the early 1990s, CERN released the underlying software as open source.



return to the latest published articles