summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 1d4d1d6)
raw | patch | inline | side by side (parent: 1d4d1d6)
author | Yangqing Jia <jiayq@google.com> | |
Mon, 11 Aug 2014 16:16:51 +0000 (09:16 -0700) | ||
committer | Yangqing Jia <jiayq@google.com> | |
Mon, 11 Aug 2014 16:16:51 +0000 (09:16 -0700) |
include/caffe/util/io.hpp | patch | blob | history | |
src/caffe/layers/data_layer.cpp | patch | blob | history | |
src/caffe/util/io.cpp | patch | blob | history |
index cdf4d9e724e8aeb028c92eebdded1955b4537543..8ff8b0c25ae67b5cf9074bb9a8498e239fb219f9 100644 (file)
#define HDF5_NUM_DIMS 4
+namespace leveldb {
+// Forward declaration for leveldb::Options to be used in GetlevelDBOptions().
+class Options;
+}
+
namespace caffe {
using ::google::protobuf::Message;
return ReadImageToDatum(filename, label, 0, 0, datum);
}
+leveldb::Options GetLevelDBOptions();
template <typename Dtype>
void hdf5_load_nd_dataset_helper(
index c089c9ba5df0d0028e5dbf2031d93d4a3d1ad6c9..8f17c45e5f640a51735f9fb0f2aa96f45947f29f 100644 (file)
case DataParameter_DB_LEVELDB:
{
leveldb::DB* db_temp;
- leveldb::Options options;
+ leveldb::Options options = GetLevelDBOptions();
options.create_if_missing = false;
- options.max_open_files = 100;
LOG(INFO) << "Opening leveldb " << this->layer_param_.data_param().source();
leveldb::Status status = leveldb::DB::Open(
options, this->layer_param_.data_param().source(), &db_temp);
diff --git a/src/caffe/util/io.cpp b/src/caffe/util/io.cpp
index fd7454d4f98ebfebafb63f57e68f1e307a3088eb..48952a53f9651d405f220c80ce3df3efd87409a5 100644 (file)
--- a/src/caffe/util/io.cpp
+++ b/src/caffe/util/io.cpp
#include <google/protobuf/io/coded_stream.h>
#include <google/protobuf/io/zero_copy_stream_impl.h>
#include <google/protobuf/text_format.h>
+#include <leveldb/db.h>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/highgui/highgui_c.h>
return true;
}
+leveldb::Options GetLevelDBOptions() {
+ // In default, we will return the leveldb option and set the max open files
+ // in order to avoid using up the operating system's limit.
+ leveldb::Options options;
+ options.max_open_files = 100;
+ return options;
+}
+
// Verifies format of data stored in HDF5 file and reshapes blob accordingly.
template <typename Dtype>
void hdf5_load_nd_dataset_helper(