swh:1:snp:f50ab94432af916b5fb8b4ad831e8dddded77084
Raw File
Tip revision: 046107108091cf8aa93a2772456686f8a3ca60b7 authored by Mark Hillebrand on 15 March 2017, 16:14:26 UTC
one more
Tip revision: 0461071
HeapMemoryProvider.h
//
// Copyright (c) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE.md file in the project root for full license information.
//

#pragma once

#include <algorithm>
#include "MemoryProvider.h"

namespace Microsoft { namespace MSR { namespace CNTK {

class HeapMemoryProvider : public MemoryProvider
{
    static const size_t size_of_first_pointer = sizeof(void*);

public:
    virtual void* Alloc(size_t elementSize, size_t numberOfElements) override
    {
        // Currently not alligned.
        return ::operator new(elementSize * numberOfElements);
    }

    virtual void Free(void* p) override
    {
        ::operator delete(p);
    }
};

}}}
back to top