https://github.com/Microsoft/CNTK
Raw File
Tip revision: 809b30c3b454d0c0274251a956f890b8cb7a71da authored by Amit Agarwal on 13 December 2016, 21:58:26 UTC
CNTK parallel training: Enable CUDA aware MPI use for simple gradient aggregator
Tip revision: 809b30c
CPURNGHandle.cpp
//
// Copyright (c) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE.md file in the project root for full license information.
//
// CPUMatrix.cpp : full implementation of all matrix functions on the CPU side
//

#include "stdafx.h"
#include "CPURNGHandle.h"

namespace Microsoft { namespace MSR { namespace CNTK {

CPURNGHandle::CPURNGHandle(int deviceId, uint64_t seed, uint64_t offset)
    : RNGHandle(deviceId)
{
#ifdef _MSC_VER // TODO: check if available under GCC/Linux
    m_generator.reset(new std::ranlux64_base_01());
    m_generator->seed((unsigned long)seed);
#else
    m_generator.reset(new std::default_random_engine(seed));
#endif
    m_generator->discard(offset);
}

}}}
back to top