From 15bc0f767fa0b8f12302f81e86654bd11daf8bea Mon Sep 17 00:00:00 2001 From: Yangqing Jia Date: Wed, 23 Jul 2014 22:47:25 -0700 Subject: add gflags dependency to caffe. --- src/caffe/common.cpp | 57 ++++++++++++++++++++++++++++++++-------------------- 1 file changed, 35 insertions(+), 22 deletions(-) (limited to 'src') diff --git a/src/caffe/common.cpp b/src/caffe/common.cpp index e8765eeb..5894a961 100644 --- a/src/caffe/common.cpp +++ b/src/caffe/common.cpp @@ -1,11 +1,14 @@ // Copyright 2014 BVLC and contributors. +#include +#include #include #include #include "caffe/common.hpp" #include "caffe/util/rng.hpp" + namespace caffe { shared_ptr Caffe::singleton_; @@ -19,6 +22,14 @@ int64_t cluster_seedgen(void) { return seed; } + +void GlobalInit(int* pargc, char*** pargv) { + // Google flags. + ::gflags::ParseCommandLineFlags(pargc, pargv, true); + // Google logging. + ::google::InitGoogleLogging(*(pargv)[0]); +} + #ifdef CPU_ONLY // CPU-only Caffe. Caffe::Caffe() @@ -138,28 +149,30 @@ void Caffe::DeviceQuery() { return; } CUDA_CHECK(cudaGetDeviceProperties(&prop, device)); - printf("Device id: %d\n", device); - printf("Major revision number: %d\n", prop.major); - printf("Minor revision number: %d\n", prop.minor); - printf("Name: %s\n", prop.name); - printf("Total global memory: %lu\n", prop.totalGlobalMem); - printf("Total shared memory per block: %lu\n", prop.sharedMemPerBlock); - printf("Total registers per block: %d\n", prop.regsPerBlock); - printf("Warp size: %d\n", prop.warpSize); - printf("Maximum memory pitch: %lu\n", prop.memPitch); - printf("Maximum threads per block: %d\n", prop.maxThreadsPerBlock); - printf("Maximum dimension of block: %d, %d, %d\n", - prop.maxThreadsDim[0], prop.maxThreadsDim[1], prop.maxThreadsDim[2]); - printf("Maximum dimension of grid: %d, %d, %d\n", - prop.maxGridSize[0], prop.maxGridSize[1], prop.maxGridSize[2]); - printf("Clock rate: %d\n", prop.clockRate); - printf("Total constant memory: %lu\n", prop.totalConstMem); - printf("Texture alignment: %lu\n", prop.textureAlignment); - printf("Concurrent copy and execution: %s\n", - (prop.deviceOverlap ? "Yes" : "No")); - printf("Number of multiprocessors: %d\n", prop.multiProcessorCount); - printf("Kernel execution timeout: %s\n", - (prop.kernelExecTimeoutEnabled ? "Yes" : "No")); + LOG(INFO) << "Device id: " << device; + LOG(INFO) << "Major revision number: " << prop.major; + LOG(INFO) << "Minor revision number: " << prop.minor; + LOG(INFO) << "Name: " << prop.name; + LOG(INFO) << "Total global memory: " << prop.totalGlobalMem; + LOG(INFO) << "Total shared memory per block: " << prop.sharedMemPerBlock; + LOG(INFO) << "Total registers per block: " << prop.regsPerBlock; + LOG(INFO) << "Warp size: " << prop.warpSize; + LOG(INFO) << "Maximum memory pitch: " << prop.memPitch; + LOG(INFO) << "Maximum threads per block: " << prop.maxThreadsPerBlock; + LOG(INFO) << "Maximum dimension of block: " + << prop.maxThreadsDim[0] << ", " << prop.maxThreadsDim[1] << ", " + << prop.maxThreadsDim[2]; + LOG(INFO) << "Maximum dimension of grid: " + << prop.maxGridSize[0] << ", " << prop.maxGridSize[1] << ", " + << prop.maxGridSize[2]; + LOG(INFO) << "Clock rate: " << prop.clockRate; + LOG(INFO) << "Total constant memory: " << prop.totalConstMem; + LOG(INFO) << "Texture alignment: " << prop.textureAlignment; + LOG(INFO) << "Concurrent copy and execution: " + << (prop.deviceOverlap ? "Yes" : "No"); + LOG(INFO) << "Number of multiprocessors: " << prop.multiProcessorCount; + LOG(INFO) << "Kernel execution timeout: " + << (prop.kernelExecTimeoutEnabled ? "Yes" : "No"); return; } -- cgit v1.2.3