CHECK OUT OUR CALENDAR OF UPCOMING EVENTS, INCLUDING CONFERENCES, MEETINGS, EDUCATIONAL OPPORTUNITIES, AND MORE!
Distributed Computing 101 for Resilient and Flexible Decentralized Grids
Instructor(s):
David Bakken, Washington State University
Prerequisites:
Some basic experience with programming will help, but is not strictly necessary.
Abstract:
Computer networks get data from Point A to (multi-)Point B with some statistical properties: delay, drop rate, error rate, etc. Distributed computing ( DC), then, is one or more layers above the network layers (OSI 1-4). It involves cooperating processes running on a network and communicating only by messages (e.g., no shared memory), in the face of different kinds of failures and other threats to resilience.
As grids get more decentralized (due mainly to renewables) distributed computing becomes much more crucial to power grids, though, sadly, the power sector remains almost completely ignorant of the many theoretical and applied lessons and technologies developed in the DC area in the last half century, despite it (and its “middleware”) being used in virtually every other industry as best practices since the late 1980s. Distributed computing at its essence answers the following questions:
- Now that we have this (inter)network, how do we best use it? This involves answering (at least) the following questions:
- How can Agents/programs separated by networks (especially wide-area) cooperate: synchronize (in time), coordinate, replicate.
In part this means this: how do we help programmers program it a lot easier (really with a lot less difficulty: it’s still hard)?
- How can “middleware” help make programming easier and interoperate across different programming languages, operating systems, CPU architecture, and vendor implantations of the same standard (e.g., CORBA, DDS)