mirror of
https://bitbucket.org/mfeemster/fractorium.git
synced 2025-01-22 05:30:06 -05:00
6ff8aa0722
-Available memory size checking in the final render dialog was accidentally removed during the multi-gpu work last year. Add it back in.
41 lines
829 B
C++
41 lines
829 B
C++
#pragma once
|
|
|
|
#include "EmberCLPch.h"
|
|
#include "OpenCLWrapper.h"
|
|
#include "IterOpenCLKernelCreator.h"
|
|
|
|
/// <summary>
|
|
/// RendererClDevice class.
|
|
/// </summary>
|
|
|
|
namespace EmberCLns
|
|
{
|
|
/// <summary>
|
|
/// Class to manage a device that does the iteration portion of
|
|
/// the rendering process. Having a separate class for this purpose
|
|
/// enables multi-GPU support.
|
|
/// </summary>
|
|
class EMBERCL_API RendererClDevice : public EmberReport
|
|
{
|
|
public:
|
|
RendererClDevice(bool doublePrec, size_t platform, size_t device, bool shared);
|
|
bool Init();
|
|
bool Ok() const;
|
|
bool Shared() const;
|
|
bool Nvidia() const;
|
|
size_t WarpSize() const;
|
|
|
|
size_t m_Calls;
|
|
OpenCLWrapper m_Wrapper;
|
|
|
|
private:
|
|
bool m_Init;
|
|
bool m_Shared;
|
|
bool m_NVidia;
|
|
size_t m_WarpSize;
|
|
size_t m_PlatformIndex;
|
|
size_t m_DeviceIndex;
|
|
shared_ptr<OpenCLInfo> m_Info;
|
|
};
|
|
}
|