Questions tagged [upc]

Unified Parallel C, a parallel extension to ISO C. A parallel programming language that exploits partitioned global address space (PGAS).

The C language extension UPC (Unified Parallel C) is based on the PGAS model. In this extension a number of threads work independently in a SPMD manner. A thread can access all the locations in the shared space, but there is data-thread affinity. Therefore, each thread has its local portion of the shared space. UPC supports static and dynamic memory allocations for both shared and private memory.

Unified Parallel C is a parallel extension to ISO C that exploits partitioned global address space (PGAS). You can find out more about it from the UPC web site.

23 questions
11
votes
2 answers

UPC in HPC - experience and suggestions

I am currently exploring some aspects of unified parallel C as an alternative to standard parallelization approaches in HPC (like MPI, OpenMP, or hydrid approaches). My question is: Does anyone have experience in UPC performance on large scale…
Mark
  • 1,333
  • 1
  • 14
  • 21
5
votes
3 answers

Unified Parallel C - examples and list of extensions

Where can I find examples of code, written in "Unified Parallel C"? I also interested in normative documents about this language (standards, reference manuals, online-accessible books and courses). What extensions were added to C to get UPC? Is this…
osgx
  • 90,338
  • 53
  • 357
  • 513
4
votes
1 answer

reading file with UPC

I'm starting to learn UPC, and I have the following piece of code to read a file: upc_file_t *fileIn; int n; fileIn = upc_all_fopen("input_small", UPC_RDONLY | UPC_INDIVIDUAL_FP , 0, NULL); upc_all_fread_local(fileIn, &n, sizeof(int), 1,…
dx_mrt
  • 707
  • 7
  • 13
4
votes
1 answer

UPC error when running (reason: unable to open any HCA ports)

I just started learning UPC and I'm getting the following error when running an hello world example: GASNet gasnetc_init returning an error code: GASNET_ERR_RESOURCE (Problem with requested resource) at…
dx_mrt
  • 707
  • 7
  • 13
3
votes
2 answers

Array of private pointers to shared array in UPC

I am programming in UPC and have an array shared between two threads. Each thread has private pointers to these shared areas: #define SIZE 10000 #define HALFSIZE (SIZE/2) shared [ HALFSIZE ] int table [ SIZE ]; /* all areas */ shared [ HALFSIZE ]…
ciembor
  • 7,189
  • 13
  • 59
  • 100
2
votes
1 answer

can we instrument UPC code with PAPI API calls

I want to instrument my UPC program with PAPI APIs to get information on hardware counters during the execution of UPC program. But i keep getting linking errors for eg, "undefined reference to PAPI_read" undefined reference to PAPI_library_init…
Sharat Chandra
  • 4,434
  • 7
  • 49
  • 66
2
votes
1 answer

Issue with upc_memget: Caught a fatal signal : SIGSEGV(11) on node 2/4

I'm trying to write a matrix multiplication code in UPC. If I don't use b_local and directly use b, its working fine. But when I use b_local via memget function, it crashes at the line "upc_memget" with the above error. #define N 10 //Input …
Vandana
  • 127
  • 1
  • 1
  • 10
2
votes
1 answer

GUPC Vs Berkeley UPC

I am trying to use UPC on a cluster with CPU/GPU hybrid nodes. Environment is Ubuntu 12.04. I am new to UPC and I found 2 versions of UPC: GNU UPC(GUPC) and Berkeley UPC. When I looked for Linux versions, only GNU GCC had a compiler for linux. So is…
Maddy
  • 2,114
  • 7
  • 30
  • 50
2
votes
1 answer

UPC Local Pointers Access Random Memory

I'm trying to use local pointers to access memory that the current thread has affinity for. Unfortunately, my local pointers don't seem to point where I think they should. Anyone have an idea what is going wrong? Edit: I forgot to mention that the…
user2042696
1
vote
1 answer

Is there a way to get Visual Studio code to recognize the .upc file format?

Is there a way to get Visual Studio code to recognize the .upc file format? .UPC is "Unified Parallel C"
1
vote
1 answer

How to solve UPC Runtime error: out of shared memory

I am trying to run a Berkeley UPC code on a computer with 64 cores and 256 GB RAM. However the code fails to run because it cannot find enough memory. The following should work because 51 x 5 = 255 GB < 256 GB upcrun -n 51 -shared-heap=5GB…
Guddu
  • 2,325
  • 2
  • 18
  • 23
1
vote
1 answer

which network type should i use in UPC

I want to run UPC program on my linux cluster with 4 nodes(each with 24 threads), UPC has provided "udp mpi and smp " netwrok when compiling the code. But in my case, which netwrok type should i use and how to write the machine file if i want to run…
ztdep
  • 343
  • 1
  • 4
  • 17
1
vote
1 answer

Berkeley UPC compiler error upcc: error running '/bin/gmake --no-print-directory' to link application

I am trying to compile a group of codes. Any idea why I am getting an error ? Thanks for your help. upcc -c -O code9xc_sac.upc -I/global/software/sl-7.x86_64/modules/tools/proj.4/4.9.3/include gcc -c -O2 code7fft.c -funroll-loops…
Guddu
  • 2,325
  • 2
  • 18
  • 23
1
vote
1 answer

What are the differences between "put" and "store" in Partitioned Global Address Space Languages (PGAS) like UPC?

I am a newbie in the area of parallel programming and different models. I was wondering what is the difference between operations like "put" and "store" in languages that follow the PGAS model. Also, it would be very helpful for me if you can…
Mr. Nobody
  • 185
  • 11
1
vote
1 answer

UPC Runtime error: out-of-range size for UPC_SHARED_HEAP_SIZE

I tried running a code xcorupc_alaska compiled on Berkeley UPC upcrun -n 3 -shared-heap=18GB xcorupc_alaska inputpgas0.txt Total memory on my computer is 64 GB and I want to allot 18 GB to 3 CPUs (it is a quad-core processor), so it should be…
Guddu
  • 2,325
  • 2
  • 18
  • 23
1
2