You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@singa.apache.org by "wangwei (JIRA)" <ji...@apache.org> on 2016/01/11 15:48:40 UTC

[jira] [Created] (SINGA-130) Implement a layer subclass for data prefetching

wangwei created SINGA-130:
-----------------------------

             Summary: Implement a layer subclass for data prefetching
                 Key: SINGA-130
                 URL: https://issues.apache.org/jira/browse/SINGA-130
             Project: Singa
          Issue Type: New Feature
            Reporter: wangwei


Data prefetching is important for training with GPU, because the IO would become the bottleneck when the computation is very fast.

One idea is to create a general prefetch layer which embeds the application specific data loading layers. 

{code}
PrefetchLayer::ComptueFeature() {
  wait until the pretch thread finishes.
  swap the prefeth_data_ and data_ blobs.
  if (first time)
     load data into data_ blobs
  spawn a new thread to call functions from data loading layers for loading data into prefetch_data_.
}
{code}
 
If the prefetch layer has multiple loading layers and is connected to multiple destination layers, then different destination layer may want data loaded by different loading layers. This case should be handled properly.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)