Project

General

Profile

Feature #13

Feature #108: Fixed-size object IDs

Feature #179: objid_t: adapt callbacks to use objid_t

CkCallback to section breaks

Added by Jonathan Lifflander almost 6 years ago. Updated 3 months ago.

Status:
New
Priority:
Normal
Assignee:
Category:
-
Target version:
-
Start date:
03/08/2013
Due date:
% Done:

100%


Description

This code fails to run (runtime error on CkCallback::pup), but compiles fine.

CProxy_ArrayA proxy = CProxy_ArrayA::ckNew(20);
CProxySection_ArrayA sec = CProxySection_ArrayA::ckNew(proxy.ckGetArrayID(), 5, 10, 1);
proxy.tocall(CkCallback(CkIndex_ArrayA::fn(), sec));


Subtasks

Feature #79: Variable-size ckcallbacksRejectedJonathan Lifflander


Related issues

Duplicated by Charm++ - Bug #235: CkCallback to array sections is very non-migratable New 06/17/2013
Blocked by Charm++ - Feature #109: Test and merge section ID and manager work Merged 03/15/2013

History

#1 Updated by Phil Miller almost 6 years ago

  • Target version set to Unscheduled

#2 Updated by Ramprasad Venkataraman almost 6 years ago

  • Category set to 8

#3 Updated by Ramprasad Venkataraman almost 6 years ago

  • Category changed from 8 to 9

#4 Updated by Ramprasad Venkataraman almost 6 years ago

  • Project changed from Charm++ to 3
  • Category deleted (9)
  • Target version deleted (Unscheduled)

#5 Updated by Phil Miller almost 6 years ago

  • Project changed from 3 to Charm++

#6 Updated by Phil Miller over 5 years ago

  • Tracker changed from Bug to Feature

#7 Updated by Phil Miller over 5 years ago

Sanjay asked what the relevant use cases are. We came up with at least OpenAtom containing nasty workarounds, and LU doing it's own things.

#8 Updated by Eric Bohm over 5 years ago

  • Assignee set to Ramprasad Venkataraman

#9 Updated by Nikhil Jain almost 5 years ago

Jonathan - can you comment on relevance of this task? Can it be marked resolved and closed? If not, please reassign (not to you, but someone else).

#10 Updated by Jonathan Lifflander almost 5 years ago

  • Parent task set to #179

It is dependent on #179 (64-bit ID and callbacks) and possibly section re-vamping.

#11 Updated by Jonathan Lifflander almost 5 years ago

  • Assignee changed from Ramprasad Venkataraman to Jonathan Lifflander

#12 Updated by Sam White almost 2 years ago

Is this code in a branch somewhere, waiting on the 64bit ID merge? Because 64bit IDs were merged months ago... If not, we'll reassign this.

#13 Updated by Juan Galvez over 1 year ago

  • Assignee changed from Jonathan Lifflander to Juan Galvez

#14 Updated by Sam White 10 months ago

Is this issue still around? If so, we should target the fix to 6.9.0 or 6.9.1

#15 Updated by Sam White 7 months ago

Is this still a real issue?

#16 Updated by Sam White 3 months ago

CkCallback's to sections are still non-migratable, but at least work on the same PE they are created on now: https://charm.cs.illinois.edu/gerrit/#/c/charm/+/4567/

#17 Updated by Raghavendra Kanakagiri 3 months ago

There is a test case for which it seems to break.

A section proxy for a 2D array consisting of 1D elements [0, *]:
CProxySection_Check sec3Proxy = CProxySection_Check::ckNew(checkArray.ckGetArrayID(), 0, 0, 1, 0, numchares_y - 1, 1);
CkCallback cb(CkIndex_Check::recvCb(), sec3Proxy);
cb.send();
Breaks with an assertion (Reason: Assertion "idx.dimension == bounds.dimension" failed in file cklocation.C line 2842.)
The same section can be used in a multicast though
sec3Proxy.func(...);

Also in a similar use case of creating 1D sections in 2D arrays, running into this error:
Reason: Array index length (nInts) is too long-- did you use bytes instead of integers?
Haven't been able to replicate the above error in a standalone code.

Also available in: Atom PDF