Tens of thousands of bugs have been eliminated from the program CERN's atom-smashers are using to identify Higgs boson – just don't expect an answer to life the universe and everytime anytime soon.
CERN says it has squashed 40,000 bugs living in ROOT, the C++ framework it is relied upon to store, crunch and help analyse petabytes of data from the Large Hadron Collider (LHC). The massive collider generates 15PB of data each year from 600 million proton collisions per second.
ROOT contains 3.5 million lines of code while CERN's army of 10,000 physicists have surrounded that core with a further 50 million lines of software they have built to try and sift out Higgs boson from the petabytes. Higgs boson is the particle that theoretically gives mass to all other particles, but it has to date proved elusive.
The bugs have lived in ROOT since the data-munching framework came online in 1995, and were only finally winkled out using the application of commercially available static-code analysis tools from development testing specialist Coverity.
CERN reckons the bugs had helped muddy results from the LHC, throwing them off the Higgs-boson scent. Further, there were programs built by those 10,000 scientists that could never be properly tested prior to Coverity.
CERN and its physicists had relied on a various testing and in-house tools for 16 years, including unit-testing to identify bugs. Axel Naumann, a member of the CERN ROOT development team, told us the tools weren't up to scratch. They generated too many false positives, might not generate enough warnings, had lacked the features to help zero in on bugs – because they generated pages of reports to wade through. The existing tools also relied on CERN's six-person tech team working on ROOT having to re-create the exact conditions that had produced a problem – a near impossible task.
Naumann told us: "A lot if people have relied on their unit test – they believe this makes them safe. It does but it’s not enough. We’d done unit testing; we do tests all the way – we need to quantify the number of bugs and know the effect they will have on our results."
Do does this now mean ROOT is bug-free? "Software doesn't work that way!" Naumann says with a big laugh. "There’s always something that’s hiding."
Big question, then: is CERN now closer to actually finding Higgs boson? Another big laugh. "You know, nature is still allowed to play tricks on us. We were hoping it wold be easier. Maybe we were unlucky, or maybe we were lucky and we just need to find new physics to identify it!"
That would be a "not necessarily" then. ®