Real generosity towards the future lies in giving all to the present.
― Albert Camus
It goes without saying that we want to have modern things. A modern car is generally better functionally than its predecessors. Classic cars primarily provide the benefit of nostalgia rather than performance, safety or functionality. Modern things are certainly even more favored in computing. We see computers, cell phones and tablets replaced on an approximately annual basis with hardware having far greater capability. Software (or apps) gets replaced even more frequently. Research programs are supposed to be the epitome of modernity and pave the road to the future. In high end computing no program has applied more resources (i.e., lots of money!! $$) to scientific computing than the DoE’s Advanced Simulation & Computing(ASC) program and its original ASCI. This program is part of a broader set of science campaigns to support the USA’s nuclear weapons’ stockpile in the absence of full scale testing. It is referred to as “Science-based” stockpile stewardship, and generally a commendable idea. Its been going on for nearly 25 years now, and perhaps the time is ripe (over-ripe?) for assessing our progress.
So, has ASC succeeded?
My judgment is that ASC has succeeded in replacing the old generation of legacy codes with a new generation of legacy codes. This is now marketed to the unwitting masses as “preserving the code base”. This is a terrible reason to spend a lot of money and fails to recognize the real role of code, which is to encode expertise and knowledge of the scientists into a working recipe. Legacy codes simply make this an intellectually empty exercise making the intellect of the current scientists subservient to the past. The codes of today have the same intellectual core as the codes of a quarter of a century ago. The lack of progress in developing new ideas into working code is palpable and hangs heavy around the entire modeling and simulation program like a noose.
It’s not technology that limits us. We’re the limitation. Our technology is an expression of our intelligence and creativity, so the limitations of our technology are a reflection of our own limitations. We can’t fundamentally advance technology until we fundamentally advance ourselves.
― Christian Cantrell
A modern version of a legacy code is not modernizing; it is surrender. We have surrendered to fear, and risk aversion. We have surrendered to the belief that we already know enough. We have surrendered to the belief that the current scientists aren’t good enough to create something better than what already exists. As I will outline this modernization is more of an attempt to avoid any attempt to engage in risky or innovative work. It places all of the innovation in an inevitable change in computing platforms. The complexity of these new platforms makes programming so difficult that it swallows every amount of effort that could be going into more useful endeavors.
The prevailing excuses for the modernization program we see today are the new computers we are buying. These computers are the embodiment of the death rattle of Moore’s law. These computers are still the echoes of the mainframe era that died so long ago, but lives on in scientific computing. The whole model of scientific computing is anything but modern; it is a throwback to a bygone era that needs to die. Mobile computing drives computing today and the true power of computing is connectivity and mobility, or perhaps ubiquity. These characteristics have not been harnessed by scientific computing.
The future is already here – it’s just not evenly distributed.
― William Gibson
Is a code modern if it executes on the newest computing platforms? Is a code modern if it is implemented using a new computer language? Is a code modern if it utilizes new software libraries in its construction and execution? Is a code modern if it has embedded uncertainty quantification? Is a code modern if it does not solve today’s problems? Is a code modern if it uses methods developed decades ago? Is a code modern if it runs on my iPhone?
What makes a code, or anything else for that matter, modern?
For the most part the core of our simulation codes are not changing in any substantive manner. Our codes will be solving the same models, with the same methods and algorithms, using the same meshing approach and the same analysis procedures. The things that will be changing are the coding and implementation of these model, methods and algorithms. The operating systems, system software, low-level libraries and degree of parallelization will all change substantially. The computers we run the codes on will change dramatically too. So at the end of process will our codes be modern?
The conventional wisdom would have us believe that we are presently modernizing our codes in preparation for the next generation of supercomputers. This is certainly a positive take on the current efforts in code development, but not a terribly accurate characterization either. The modernization program is certainly limited to the aspects of the code that have the least impact on the results, and avoids modernizing the aspects of a code most responsible for its utility. To understand this rather bold statement requires a detailed explanation.
Ultimately if our masters are to be believed, the point of ASC, SBSS and our codes is the proper stewardship of the nuclear weapons stockpile. The stockpile exists in the real, physical world and consists of a decreasing number of complex engineered systems we are charged with understanding. Part of that understanding involves the process of modeling and simulation, which needs a chain of activities to succeed. Closest to reality is our model of reality, which is then solved by a combination of methods and algorithms, which in turn are implemented in code to run on a computer. All of this requires a set of lower-level libraries and software that effectively interface the coded implementation with the computer. Finally we have the computer that runs the code.
Each one of these steps is essential and must work properly to succeed; the needs of each step need to be balanced against the others in a holistic fashion. For example no amount of computer power, computer science, or scaling will ever rescue a code whose models are flawed. If you believe that our models as presently stated are inappropriate to answer the questions facing the stockpile today (and I do), the current program does nothing to alleviate this problem. I believe we have failed to properly balance our efforts, and allowed ourselves to create a new generation of legacy codes to replace the previous one. A legacy code is the opposite of a modern code, but its exact what we have made.
The goal of a life purpose is not what you will create, but what it will make you into for creating it.
― Shannon L. Alder
A major problem with the approach we have taken to computing is the impact on the careers of our staff. Instead of producing a cadre of professionals spanning the full spectrum of the necessary knowledge and skills, we have a skewed base. The bias toward stewardship by massive computer power without emphasis on modeling, methods or algorithms, the development of our scientists and engineers is similarly and unhealthily skewed as well. By not embracing a holistic path with an emphasis on creation and innovation, the development of the current generation of scientists and engineers is stunted. We see our current path perpetuating both an unbalanced approach that amplifies its harmful impact by eschewing risky research and avoiding both innovation and discovery in the process. This produces the knock on effect of killing the development of our staff.
It is notable that this is a New Year’s Day post; so the future is here. Given this, and upon some reflection a research program isn’t really good enough if it is modern, it must be futuristic. Research should be creating the future, not simply be in the present. If research is stuck in the past, the future really can’t be accessed. My concern is that the view of low risk endeavors is severely shaped by what has succeeded in the past. The best way to be successful, at least superficially, is to do what has worked in the past. This seems to be what we are doing in high performance computing. We build the codes that worked in the past and put them on our big mainframes. The truth is we can’t be modern if we are in the past, and we will never create the future.
So this is where we are at, stuck in the past, trapped by our own cowardice and lack of imagination. Instead of simply creating modern codes, we should be creating the codes of the future, applications for tomorrow. We should be trailblazers, but this requires risk and taking bold chances. Our current system cannot tolerate risk because it entails the distinct chance of failure, or unintended consequence. If we had a functioning research program there is the distinct chance that we would create something unintended and unplanned. It would be wonderful and disruptive in a wonderful way, but it would require the sort of courage that is in woefully short supply today. Instead we want to have certain outcomes and control, which means that our chance of discovering anything unintended disappears from the realm of the possible.
With relative ease this situation could be rescued. Balance could be restored and progress could proceed. We simply need to produce a greater focus and proper importance on the issues associated with modeling, methods and basic algorithms (along with appropriate doses of experiments, physics and real applied math). Each of these areas is greatly in need of an injection of real vitality and modernity, and offer far greater benefits than our present focus on computing hardware. It is arguable that we have evolved to point where the emphasis on hardware is undermining more valuable efforts. This would require a requisite reduction is some of computer science and hardware focus, which is useless without better models anyway.
The core of the issue is the difficulty of using the next generation of computers. These machines are literally monstrous in character. They raise parallelism to a level that makes the implementation of codes incredibly difficult. We are already in a massive deficit in terms of performance on computers. For the last 25 years we have steadily lost ground in accessing the potential performance of our computers. Our lack of evolution for algorithms and methods plays a clear role here. By choosing to follow our legacy code path we are locked into methods and algorithms that are suboptimal both in terms of performance, accuracy and utility on modern and future computing architectures. The amount of technical debt is mounting and magnified by acute technical inflation.
I’ll posit an even more controversial idea about massively parallel computers. These machines were a bona fide disruptive innovation, but instead of disrupting positively as this concept usually applies, parallel computing has been destructive. The implementation of standard scientific computing models and methods has been so difficult that more valuable efforts have been decimated in the process. For example numerical linear algebra has been completely static algorithmically for thirty years. The effort to merely implement multigrid on parallel computers has swallowed all of the innovation. The problem is that the innovative algorithmic progress would crush the impact of implementations with a single breakthrough. Have we been denied a breakthrough because of effort is all focused on implementation?
The clincher is that the next generation of computing may be even more catastrophically disruptive than the previous one.
To accomplish this we would have to turn our back on the mantra of the last quarter century; we just need a really fast computer (preferably the fastest one on Earth) and the stockpile will be OK. This mindset is so incredibly vacuous as to astound, but the true epitome of modernity is superficiality. The view that a super fast computer is all we need to make modeling and simulation work effectively is simplistic in the extreme. In modern America simplistic is what sells. Americans don’t do subtlety and the current failures in high performance computing can all be linked to the subtle differences between the simplistic messaging that gets funding and the subtle messaging of what would be effective. Our leaders have consistently chosen to focus on what would get funded over what would be effective. We cannot continue to make these choices and be successful; the deficit in intellectual depth will come due soon. Instead of allowing this to become a crisis we have the opportunity to get ahead of the problem and change course.
The best way to predict your future is to create it.
― Abraham Lincoln
The real goal should not be modernizing our codes; it should be creating the codes of the future. First, we must throw off the shackles of the past and refuse to perpetuate the creation of a new generation of legacy codes. The codes of the future should solve the problems of the future using futuristic model, methods and algorithms. If we continue to keep our attention in the past and promoting the continued preservation of an antiquated code base, the future will never arrive. Simply implementing the codes of the past so that they work on new computers is merely a useful exercise for proofing concepts. These computers purchased at great cost should be looking forward, not back, with fresh eyes and new ideas for solving the problems ahead of us, not yesterday’s.
Today’s science is tomorrow’s technology.
― Edward Teller
We owe the future nothing less. The future is in our hands; we can make it into what we want to.
You realize that our mistrust of the future makes it hard to give up the past.
― Chuck Palahniuk













acting as the rich (aside from Trump) would like. The rich may get the last laugh and put one of their own puppets in control of the mob. Overall it is simply another element in looking toward a chaotic outcome.
Sexual freedom that provided one of the key elements for the 1960’s is undergoing a new renaissance revolving around mobile computing. Mobile apps and new forms of dating like Tinder, OKCupid are the most innocuous forms for these changes in the relationship landscape. The forces of conservatism are horrified and fearful of these changes, and are mobilizing to push back against them. All of this is ripe for deep and wrenching conflict on new social battlefields. Just as the forces of liberalization utilize modern technology, the forces arrayed against changes organize themselves with modern technology too (ISIS is an example!).


World. On the other hand, the downsides to the current milieu with regard to science are stark and obvious. Science is in complete disarray and we are to blame.
climate has become a festering and poisonous environment, the conduct of science has taken on a similar air. Part of this issue comes from the public funding of science, which is an absolute necessity considering the utter wasting away of corporate science. The imposition of short-term thinking as the principle organizing principle for industry has obliterated basic research at the corporate level. Unfortunately the corporate mantra has been adopted by the government as a way of improving the quality of governance. This has simply multiplied the harm done by the sort-term thinking and its ability to ravage any long-term accomplishments.
The truth is that short-term thinking is bad for business, bad for science, bad for careers, bad for everyone except those at the top. It only benefits activities like finance as a way of powering their moneymaking shell game. It benefits the very rich and their rent-seeking behavior. We get sold a complete line of bullshit in calling all the finance “investment” when it is simply moving money around to make more money. The middle class has been sold on this strategy through their retirement accounts, but this is the equivalent of a bribe as it only buys their acceptance of a system that harms the middle-class in the long-term. The only interest that truly benefits is the status quo that is locked in from this focus. For science, the short-term thinking is simply destructive and a recipe for mediocrity and lack of progress. Again, the problems are only seen in the long-term when the lack of scientific progress will harm our descendants.
For me I see my life and career playing out in this shitty time. I could have been part of something bold and wonderful with science providing the backbone of an important societal endeavor. Instead we are destroying research institutions through utter neglect. We are wasting careers and lives in pushing down risks due to irrational fears. All of this is done in service to short-term thinking that benefits the rich and powerful. No one else benefits from the short-term thinking, no one, it is simply a vehicle for empowering the status quo and assuring that the identities of those on top do not change. It is the straightjacket through which lack of social mobility arises.
All one has to do is look at the political environment today. Americans and perhaps the entire Western world have never been more fearful and afraid. At the same time the World has never been more peaceful. Our society and so-called leaders amp up every little fear and problem into a giant boogieman when the actual reality is completely opposite. We have never ever been safer than today. This is true even with the orgy of gun violence in the United States. The powers that be use the tiny danger of terrorism to drive the forces of the status quo while utterly ignoring larger dangers (like firearms). The truth is that we have never had less to fear. Yet fear is the driving force politically and used to sell fear-spewing candidates to a weak, shivering populace. Fear sells products to people whether is drugs, cars, media content, guns, or almost anything else. Our mass media is simply a tool of their corporate overlords with the ultimate design to enslave us to the status quo. Our society runs on fear and fear is used to enslave the populace. Science is simply an innocent bystander slain by the societal drive-by.
This thinking infests the approach to high performance computing where a tried and true path of relying upon Moore’s law has powered modest improvements for decades. At the same time we have avoided progress in other areas of computing with greater benefits, but also greater risks and higher probabilities of failure. A prime example of this disservice can be found in numerical linear algebra where the solution of sparse systems has stagnated for decades. All the effort has been consumed by moving the existing methods to the new computing platforms, and little or nothing on improving the methods themselves. Orders of magnitude in performance improvements have been scarified to fear and risk avoidance. Let’s not forget that the principle beneficiaries of the current supercomputing program are computer vendors who will receive great sums of money to produce the monstrous computers being contemplated. These horrible machines will sap the resources left over to actually use them and simply compound the stasis already evident in the field.
n a very clear way we are taking enormous risks with our future. We are accumulating massive long-term risk by consistently taking the low-risk short-term path. This is clearest when examining the state of the careers in science. Once we allowed people to aggressively pursue research with a high change of failure, but the possibility of massive payoffs. Today we timidly pursue incremental progress, yet view this as enormously risky. The greatest risk of the continued pursuit of a computing hardware driven path in high performance computing is the destruction of promising scientific careers, and the destruction of a balanced program for advancing modeling and simulation. Make no mistake, the current approach to modeling and simulation is completely unbalanced. It is timid. It lacks creativity. It lacks vitality. It is not science-based; it is fear-based. It is the result of an unhealthy fixation on short-term thinking about progress.
uncertainty in our knowledge is far larger than we are willing to admit. The sort of uncertainty that is present cannot be meaningfully addressed through the focus on more computing hardware (its assessment could be helped, but not solved). This uncertainty can only be addressed through a systematic effort to improve models and engage in broad experimental and observation science and engineering. If we work hard to actively understand reality better the knobs can be reduced or even removed as knowledge grows. This sort of work is exactly the sort of risky thing our current research culture eschews as a matter of course.
account for multiple effects (turbulence, mixing, plasma physics, radiation and numerical resolution are common). In this cases the knobs may account for a multitude of poorly understood physical phenomena, mystery physics and lack of numerical resolution. This creates a massive opportunity for severe cognitive dissonance, which is reflected in an over-confidence in simulation quality. Scientists using simulations like to provide those funding their work with greater confidence than it should carry because the actual uncertainty would trouble those paying for it. Moreover the range of validity for such calculation is not well understood or explicitly stated. One of the key aspects of the calibration being necessary is that the calculation cannot reflect a real World situation without it. The model simply misses key aspects of reality without the knobs (climate modeling is an essential example).
In essence there are two uncertainties that matter: the calibrated uncertainty where data is keeping the model reasonable, and the actual predictive uncertainty that is much larger and reflects the lack of knowledge that makes the calibration necessary in the first place. Another aspect of the modeling in the calibrated setting is the proper use of the model for computing quantities. If the quantity coming from the simulation can be tied to the data used for calibration, the calibrated uncertainty is a reasonable thing to use. If the quantity from the simulation is inferred and not directly calibrated, the larger uncertainty is appropriate. Thus we see that the calibrated model has intrinsic limitations, and cannot be used for predictions that go beyond the data’s physical implications. For example climate modeling is certainly reasonable for examining the mean temperature of the Earth. One the other hand the data associated with extreme weather events like flooding rains are not calibrated, and uncertainty regarding their prediction under climate change are more problematic.
In modeling and simulation nothing comes for free. If the model needs to be calibrated to accurately simulate a system, the modeling is limited in an essential way. The limitations in the model are uncertainties about aspects of the system tied to the modeling inadequacies. Any predictions of the details associated with these aspects of the model are intrinsically uncertain. The key is the acknowledgement of the limitations associated with calibration. Calibration is needed to deal with uncertainty about modeling, and the lack of knowledge limits the applicability of simulation. One applies the modeling in a manner that is cautious, if they are being rational. Unfortunately people are not rational and tend to put far too much faith in these calibrated models. In these cases they engage in wishful thinking, and fail to account for the uncertainty in applying the simulations for prediction.

national security issue to sell it without a scintila of comprehension for what makes these computers useful in the first place. The speed of the computer is one of the least important aspects of the real transformative power of supercomputing, and the most distant from its capasity to influence the real world.
immense and truly transformative. We have deep scientific, engineering and societal questions that will be unanswered, or answered poorly due to our risk aversion. For example, how does climate change impact the prevalence of extreme weather events? Our existing models can only infer this rather than simulate it directly. Other questions related to material failure, extremes of response for engineered systems, and numerous scientific challenges will remain beyond our collective grasp. All of this


Avoiding accountability is never a good thing. On the other hand too much overbearing accountability starts to look like pervasive trust issues. The concomitant effects of working in a low-trust environment are corrosive to everything held accountable. As most things the key is balance between accountability and freedom, too much of either lowers performance. Today we have too little freedom and far too much accountability in a destructive form. For the sake of progress and quality a better balance must be restored. Today’s research environment is being held accountable in ways that reflect a lack of trust, and a complete lack of faith in the people doing the work, and perhaps most importantly produce a dramatic lack of quality in the work (
It shows in everything we do.
Our accounting systems are out of control. They spawn an ever-growing set of rules and accounts to manage the work. All of this work is nothing more than a feel good exercise for managers who mostly want to show “due-diligence” and those they “manage risk”. No money is ever wasted doing anything (except increasingly all the money is wasted). Instead we are squeezing the life out of our science, which manifests itself as low quality work. In a very real way low quality science is easier to manage, far more predictable and easy to make accountable. One can easily argue that really great science with discovery and surprise completely undermines accountability, so we implicitly try to remove it from the realm of possibility. Without discovery, serendipity and surprise, the whole enterprise is much more fitting to tried and true business principles. In light of where the accountability has come from, it might be good to take a hard look at these business principles and the consequences they have reaped.
Quality suffers because of loss of breadth of perspective and injection of ideas from divergent points of view. Creativity and innovation (i.e., discovery) are driven by broad and divergent perspectives. Most discoveries in science are simply repurposed ideas from another field. Discovery is the thing we need to progress in science and society. It is the very thing that our current accountability climate is destroying. Accountability helps to drive away any thoughts from outside the prescribed boundaries of the work. Another maxim of today is the customer is always right. For us the customers are working under similar accountability standards. Since they are “right” and just as starved for perspective, the customer works to narrow the focus. We get a negative flywheel effect where narrowing focus and perspective work to enhance their effect.
The end result of our current form accountability is small-minded success. In other words we succeed at many small unimportant things, but fail at large important things. The management can claim that everything is being done properly, but never produce anything that really succeeds in a big way. From the viewpoint of accountability we see nothing wrong all deliverables are met and on time. True success would arise by attempting to succeed at bigger things, and sometimes failing. The big successes are the root of progress and the principal benefit of dreaming big and attempting to achieve big. In order to succeed big, one must be willing to fail big too. Today big failure surely brings congressional hearings and the all to familiar witch-hunt. Without the risks of failure we are left with small-minded success being the best we can do.
I was stunned by how empowering his description of work could be, and how far from this vision I work under today. I might simply suggest that my management read that book and implement everything in it. The scary thing is that they did read it, and nothing came of it. The current system seems to be completely impervious to good ideas (or perhaps following the book would have been too empowering to the employees!). Of course the book suggests a large number of practices that are completely impossible under current rules and opposed by the whole concept of accountability we are under today.
ical reason not to test them; the idea of not testing is purely political. It is a good political stance from a moral and ethical point-of-view and I have no issue with taking that stand on those grounds. From a scientific and engineering point-of-view it is an awful approach, and clearly far from optimal and prone to difficulties. These difficulties can be a very good thing if harnessed appropriately, but today such utility is not present in the execution of our Lab’s mission. As one should always remember, nuclear weapons are political things, not scientific, and politics is always in charge.
anniversary. Our political leaders are declaring it to be a massive success. They have been busy taking a victory lap and crowing about its achievements. The greatest part of this success is high performance computing. These proclamations are at odds with reality. The truth is that the past 20 years have marked the downfall of the quality and superiority of our Labs and the supremacy of these institutions scientifically. The program should have been a powerful hedge against decline, and perhaps it has been. Perhaps without stockpile stewardship the Labs would be in even worse shape than they are today. That is a truly terrifying thought. We see a broad-based decline in the quality of the scientific output of the United States, and our nuclear weapons’ Labs are no different. It appears that the best days are behind us. It need not be this way with proper leadership and direction.
Nonetheless given the stance of not testing we should be in the business of doing the very best job possible within these self-imposed rules (i.e., no full up testing). We are not and we are not to a relatively massive degree. This is not on purpose, but rather by a stunning lack of clarity in objectives and priorities. We have allowed a host of other priorities to undermine success in this essential endeavor. By taking the fully integrated testing of the weapons off the table requires that we bring our very best to everything else we do.
I’ve written a great deal about how bad our approach to modeling and simulation is, but it’s the tip of the proverbial iceberg of incompetence and steps that systematically undermine the work necessary to succeed. Where modeling and simulation gets a lot of misdirected resources the experimental and theoretical efforts at the Labs have been eviscerated. The impact of this evisceration on modeling and simulation is evident in issues with the actual credibility of simulation. This destruction has been done at the time when they are needed the most. Instead support for these essential scientific engines for progress have been “knee-capped”. Just as importantly a positive work environment has been absolutely annihilated by how the Lab’s are managed.
Science becomes so incremental that progress is glacial. You almost completely guarantee safety and in the process a complete lack of discovery. Experiments lose all their essence and utility in acting as a hedge against over-confidence by surprising us. Add the risk aversion we talk about below, and you have experimental science that does almost nothing. As a result we get very little for our experimental dollar, and allow ourselves to do almost nothing innovative or exciting. So yes, safety is really important, and we need to produce a safe working environment. This same environment must also be a productive place. The productivity gains that we have seen in the private world have been systematically undermined at the Labs, not just by safety, but two other drivers risk aversion and security.
Finally we have a focus on accountability where we want to be guaranteed that no money be wasted at any time. Part of this is risk aversion where research that might not pan out and doesn’t get funded because not panning out is viewed as failure. Instead these failures are at the core of learning and growing. Failure is essential to learning and acquiring knowledge. Our accountability system is working to destroy the scientific method, the development of staff, and our ability to be the best. To some extent we account not because we need to, but because we can. Computers allow us to sub-divide our sources of money into ever-smaller bins along with everyone’s time, and effort. In the process we lose the crosscutting nature of the Lab’s science in the process. We get a destruction of multi-disciplinary science that is absolutely essential to doing the work of stewardship. Without multi-disciplinary science we will surely fail at this essential mission, and we are managing the Labs in a way that assures this outcome.
All of this is systematically crushing our workforce and its morale. In addition, we are failing to build the next generation of scientists and engineers with a level of quality necessary for the job. We are allowing the quality of the staff to degrade through the mismanagement of the entire enterprise at a National level. Without a commitment to real unequivocal success in the stewardship mission, the entire activity is simply an exercise in futility.
When we look at the overall picture we see a system that is not working. We spend more than enough money on stockpile stewardship, but we spend the money foolishly. The money is being wasted on a whole bunch of things that have nothing to do with stewardship. Most of the resources are going into guaranteeing complete safety, complete absence of risk, complete security and complete accountability. It is a recipe for abject failure at the integrated job of safeguarding the Nation. We are failing in a monumental way while giving our country the picture of success. Of course the average American is so easily fooled because if they weren’t would our politics be so dysfunctional and dominated by fear-based appeals?
Another way of making progress is to renew our intent towards building truly World-class scientists at the Labs. We can do this by harnessing the Lab’s missions to do work that challenges the boundary of science. Today we are World class by definition and not through our actions. We can change this by simply addressing the challenges we have with a bold and aggressive research program. This will drive the professional development to heights that today’s current approach cannot match. Part of the key to developing people is to allow their work to be the engine of learning. For learning, failure and risk is key. Without failure we learn nothing, just recreate the success we already know about. World-class science is about learning new things and cannot happen without failure, and failure is not tolerated today. Without failure science does not work.
The stupid, naïve and unremittingly lazy thinking that permeate high performance computing aren’t just found there. It dominates the approach to stockpile stewardship. We are stewarding our nuclear weapons with a bunch of wishful thinking instead of a
well-conceived and executed plan. We are in the process of systematically destroying the research excellence that has been the foundation of our National security. It is not malice, but rather societal incompetence that is leading us down this path. Increasingly, the faith in our current approach is dependent on the lack of reality of the whole nuclear weapons’ enterprise. They haven’t been used for 70 years and hopefully that lack of use will continue. If they are used we will be in a much different World if they are used, and a World we are not ready for any more. I seriously worry that our lack of seriousness and pervasive naivety about the stewardship mission will haunt us. If we have screwed this up, history will not be kind to us.
A much better analogy is cooking. Code is simply the ingredients used to cook a dish. Good ingredients are essential, but insufficient to assure you get a great meal. Moreover food spoils and needs to be thrown out, replaced or better ones choses. Likewise parts of the code are in constant need of replacement or repair or simply being thrown out. The computing hardware is much like the cooking hardware, the stove top, oven, food processors, etc. which are important to the process, but never determine the quality of the meal. They may determine the ease of preparation of the meal, but almost never the actually taste and flavor. In the kitchen nothing is more
important than the chef. Nothing. A talented chef can turn ordinary ingredients into an extraordinary culinary experience. Give that same talented chef great ingredients, and the resulting dining experience could be absolutely transcendent.
Our scientists are like the chefs and their talents determine the value of the code and its use. Without their talents the same code can be rendered utterly ordinary. The code is merely a tool that translates simple instructions into something the computer can understand. In skilled hands it can render the unsolvable, solvable and unveil an understanding of reality invisible to experiment. In unskilled hands, it can use a lot of electricity and fool the masses. With our current attitude toward computers we are turning Labs once stocked with outstanding ingredients and masterful chefs into fast food frycooks. The narrative of preserve the code base, isn’t just wrong, it is downright dangerous and destructive.
Computing at the high end of modeling and simulation is undergoing great change in a largely futile endeavor to squeeze what little life Moore’s law has left in it. The truth is that Moore’s law for all intents and purposes died a while ago, at least for real codes solving real problems. Moore’s law only lives in its zombie-guise of a benchmark involving dense linear algebra that has no relevance to the codes we actually buy computers for. So I am right in the middle of a giant bait and switch scheme that depends on the even greater naivety and outright ignorance on the part of those cutting the checks for the computers than those defining the plan for the future of computing.
intellect and knowledge base used to comprise it in conjunction with the intellect and knowledge used to solve the problem. At the deepest level the code is only as good as the people using it. By not investing in the quality of our scientists we are systematically undermining the value of the code. For the scientists to be good their talent must be developed through engaging in the solution of difficult problems.
If we stay superficial and dispense with any and all sophistication then we get rid of the talented people, and we can get by with trained monkeys. If you don’t understand what is happening in the code, it just seems like magic. With increasing regularity the people running these codes treat the codes like magical recipes for simulating “reality”. As long as the reality being simulated isn’t actually being examined experimentally, the magic works. If you have magic recipes, you don’t change them because you don’t understand them. This is what we are creating at the labs today, trained monkeys using magical recipes to simulate reality.
well-educated cadre of pheasants. Behind these two god-awful reasons to spend money is a devaluing of the people working at the Labs. Development of talent and the creation of intellectual capital by that talent are completely absent from the plan. It creates a working environment that is completely backward looking and devoid of intellectual ownership. It is draining the Labs of quality and undermining one of the great engines of innovation and ingenuity for the Nation and World.
The computers aren’t even built to run the magical code, but rather run a benchmark that only produces results for press releases. Running the magical code is the biggest challenge for serfs because the computers are so ill suited to their “true” purpose. The serfs are never given the license of ability to learn enough to create their own magic; all their efforts go into simply maintaining the magic of the bygone era.
All of this is still avoiding the impact of solution algorithms on the matter of efficiency. As others and I have written, algorithms can do far more than computers to improve the efficiency of solution. Current algorithms are an important part of the magical recipes in current codes. We generally are not doing anything to improve the algorithmic performance in our codes. We simply push the existing algorithms along into the future.
This is another form of the intellectual product (or lack thereof) that the current preserve the code base attitude favors. We completely avoid the possibility of doing anything better than we did in the past algorithmically. Historically improvements in algorithms provided vastly greater advances in capability than Moore’s law provided. I say historically because these advances largely occurred prior to the turn of the Century (i.e., 2000). In the 15 years since progress due to algorithmic improvements has ground to a virtual halt.
Much greater benefits could be realized through developing better models, extending physical theories, and fundamental improvements in algorithms. Each of these areas is risky and difficult research, but offers massive payoffs with each successful breakthrough. The rub is that breakthroughs are not guaranteed, but rather require an element of faith in ability of human intellect to succeed. Instead we are placing our resources behind an increasingly pathetic status quo approach. Part of the reason for continuation of the approach is merely the desire of current leadership to take a virtual victory lap by falsely claiming the success of the approach they are continuing.
Once we developed talent by providing tremendously important problem to solve and turn excellent people loose to solve these problems in an environment that encouraged risky, innovative solutions. In this way the potentially talented people become truly talented and accomplished, ready to slay the next dragon using the experience of the previous slain beasts. Today we don’t even show let them see an actual dragon. Our staff never realize any of their potential because they are simply curating the accomplishments of the past. The code we are preserving is one of these artifacts we are guarding. This approach is steadily strangling the future.