Uploaded image for project: 'REEF'
  1. REEF
  2. REEF-1520

Enable concurrent processing of .NET driver-side events

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 0.16
    • Fix Version/s: None
    • Labels:
      None

      Description

      A .NET driver is backed by a Java driver, with driver-side events being delegated from Java to .NET via JNI. However, for the ease of development, we currently have setup all events to be processed one at a time, sequentially.

      // org.apache.reef.javabridge.generic.JobDriver
      public void onNext(final AllocatedEvaluator allocatedEvaluator) {
        synchronized (JobDriver.this) {
          ..
        }
      }
      
      public void onNext(final ActiveContext context) {
        synchronized (JobDriver.this) {
          ..
        }
      }
      

      Concurrent processing is NOT inherently impossible, since we already have it on the Java side. We can make improvements to the code so that concurrency is allowed for the .NET side too.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                jsjason Joo Seong Jeong
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated: