UPC is still alive as a research project at the University of California at Berkeley and is likely to be used by high-performance computing facilities and national laboratories affiliated with the research team. You can get the latest version released in November 2009 here . Documentation, sample code, etc. Can be found here . The language specification is here ; There are many extensions on top of the C99 syntax to support streams and cross-threading as first-class objects (perhaps not in the strict sense of โfirst classโ, but certainly more than in C, where you access opaque libraries for synchronization and communication).
UPC is still used in some places; I am not an expert, but I can say that using UPC consists of a GCC-based compiler, a runtime and a GASNet messaging layer that runs on top of your network stack. They seem to be relatively well supported on machine types for which you might need something like UPC. I would not call it a huge community of developers, but if you control a large parallel machine, you should do it. If you just want something to work on your laptop, desktop or server, there are many other parallel programming models with commercial support, tools, etc.
source share