70 likes | 218 Views
Views on CPS. Ganesh. Why CPS is important. Tomorrow’s massively complex digital systems won’t “just work” Their correctness is a multi-faceted issue Concurrency problems are largely responsible for the sheer complexity ( cf the Mars Pathfinder story)
E N D
Views on CPS Ganesh
Why CPS is important • Tomorrow’s massively complex digital systems won’t “just work” • Their correctness is a multi-faceted issue • Concurrency problems are largely responsible for the sheer complexity (cf the Mars Pathfinder story) • Concurrency is unlike anything other engineering methods have successfully dealt with • Fortunately there are many solutions in the works to properly manage concurrency • There are things beyond concurrency (e.g. system-wide behavior, stability, ability to predict, security properties, …) that are so brand new that a proper mathematical foundation remains an unmet goal for two reasons • There are too many such proposals • Most proposals are left unfulfilled • “Toss over the fence” hoping someone will use the research is an unworkable proposition
Why Standardization is important • No engineering discipline evolved without • Standardization • Mathematics supporting the standards • Without BOTH in place, we will either be re-inventing the mathematics or be re-inventing the artifacts • Standards must be evolved bottom-up on a “need felt truly” basis • Too many academic standards • Too many standards that serve as grounds on which compromises have been struck between vested interests • When this happens, a standard simply serves as a white flag of truce, but then everyone goes about doing their own separate things!! • Sign of an enduring standard • Comes on the scene at the right time • Its proponents remain faithful to the causefor decades • It gets imitated / adapted for more than it was originally meant!
Are there any “enduring” standards? • With CS so young, it’s too early to tell! • In a way, mathematical logic is an enduring “standard” for human reasoning • Others (e.g. concurrency formalisms) are still not adequately vetted • Some evolved amidst the chaos and impatience that commercial interests impose on CS • Some were purely academic thought experiments of “ideal goals” whereas in most cases those who propose such goals are probably overlooking something serious • People try to forget the golden rule of simplicity • Example of simplicity : using a formalism that is “just right” • One anecdotal example : Ed Lee’s pursuit of stream programming for TWO decades now, and his use of this notation to teach a Robotics class that hacks the Roomba Robot !! • We need lots more such examples! • But there ARE some enduring “mundane” standards (next slide)
Example of a robust standard: MPI • While many say “yuck”, it is often an ill-conceived “yuck” • MPI is the de facto standard of distributed programming • Today’s weather simulation codes written in it can’t easily be replaced for ‘decades’ • Petascale machines will need MPI • Are we planning for exa-scale? If so how? • MPI has become the model for the creation of a multicore communication standard between the CPUs of future multi-core CPUs! (at least one standard that is under active consideration, called MCAPI – http://www.multicore-association.org • Imitation is the best flattery! • There is something simple and natural in MPI that allowed MCAPI creators to model after it
Yet, one should plan for extrication from the “legacy mire” • Nothing remains “shiny” forever • The assumptions under which MPI was created, the hardware, the compilers, the user base, the user education level, future apps, … all change • What CPS needs can be distilled into TWO proposals • Be developing the replacement standard in a very concerted fashion! • E.g. (maybe) Yelicket.al.’s work on Global Address Space languages – be trying to demo “MPI replacement” over a prolonged period. • People should be encouraged to port applications risk-free (current resistance comes from not knowing whether GAS languages will be there by the time the apps are built) • Be funding CPS researchers in a “true commitment mode”
True commitment mode • A group of PIs should be hand-picked • They (the whole team) should commit to be wedded mainly to the CPS project for about 4-5 years • There should be active monitoring by a consortium of industrial partners who have vested interest in the positive outcome • There must be a massive attempt to experiment with curricula (e.g. hand-picked students studying under innovative new curricula) • Without doing the above, we have plenty of “toss over the fence” research already underway – we don’t want more of it • Sort of a hybrid of the NSF-style selection, DARPA-style funding, and SRC/GRC style of mentoring !!! This is what the program funding / deliverables model should be. • Ideally the proposal also should be SRC-style in terms of proposing achievable goals, and not lofty visions of the DARPA era (what you do is what you say should happen more and more) • The vacuum is not in people’s imagination and ideas, but the stamina to run the last mile !!