SystemRequirementsCheck¶
-
MacroModule
¶ genre Analysis
author Wolf Spindler
package FMEstable/ReleaseMeVis
definition SystemRequirementsCheck.def see also SystemInfo
,CoreControl
,RuntimeView
keywords check
,verify
,analyze
,analyse
,operating
,system
,compiler
,bitness
,memory
,requirements
,gpu
,cpu
,ram
,cores
,needed
,texture
Purpose¶
SystemRequirementsCheck
is a convenience macro supporting application builders. It checks for resources needed by an application.
It is designed to replace script components which perform resource checks.
This includes checks for
- operating systems (Windows, Linux, macOS)
- 32/64 bitness
- the compiler the application is built with (vc, gcc, clang)
- OpenGL version
- Debug/Release mode
- number of cores, virtual and physical processors as well as cpu type and vendor ids
- existance, readability, writability and sufficient capacity in directories or disks
- and main, GPU and texture memory sizes
The amounts of available resources as well as many useful other settings (e.g. application directories) are displayed as fields to simplify their usage in application networks.
A human readable report is generated which can easily be logged as ML error with a notify field.
Parameter Fields¶
Field Index¶
Visible Fields¶
Operating System¶
-
name:
operatingSystem
, type:
String
, persistent:
no
¶ Shows the operating system on which the application runs.
Allowed On Windows¶
-
name:
allowedOnWindows
, type:
Bool
, default:
TRUE
¶ If enabled then it is okay that this application runs on a Windows operating system.
Allowed On Mac OS¶
-
name:
allowedOnMacOS
, type:
Bool
, default:
TRUE
¶ If enabled then it is okay that this application runs on a macOS operating system.
Allowed On Linux¶
-
name:
allowedOnLinux
, type:
Bool
, default:
TRUE
¶ If enabled then it is okay that this application runs on a Linux operating system.
Allowed On Any System¶
-
name:
allowedOnAnySystem
, type:
Bool
, default:
FALSE
¶ If enabled then it is okay that this application runs on any operating system.
Bitness¶
-
name:
bitness
, type:
String
, default:
32
¶ Shows the main word width in bits of the operating system.
Allowed on 32 bit¶
-
name:
allowedOn32Bit
, type:
Bool
, default:
TRUE
¶ If enabled then it is okay that this application runs on a 32 bit operating system.
Allowed on 64 bit¶
-
name:
allowedOn64Bit
, type:
Bool
, default:
TRUE
¶ If enabled then it is okay that this application runs on a 64 bit operating system.
Compiler¶
-
name:
compiler
, type:
String
, persistent:
no
¶ Shows the compiler which was used to build this application.
Allowed On GCC¶
-
name:
allowedOnGCC
, type:
Bool
, default:
TRUE
¶ If enabled then it is okay that a gcc compiler has built this application.
Allowed On Clang¶
-
name:
allowedOnClang
, type:
Bool
, default:
TRUE
¶ If enabled then it is okay that a clang compiler has built this application.
Allowed On VC¶
-
name:
allowedOnVC
, type:
Bool
, default:
TRUE
¶ If enabled then it is okay that a VisualStudio compiler has built this application.
Compile Mode¶
-
name:
compileMode
, type:
String
, persistent:
no
¶ Displays in which mode the application was compiled, for example ‘Debug’ or ‘Release’.
Allowed On Debug¶
-
name:
allowedOnDebug
, type:
Bool
, default:
TRUE
¶ If enabled then it is okay that this application runs in debug mode.
Allowed On Release¶
-
name:
allowedOnRelease
, type:
Bool
, default:
TRUE
¶ If enabled then it is okay that this application runs in release mode.
Open GLVersion¶
-
name:
openGLVersion
, type:
String
, persistent:
no
¶ Shows the identification string of the OpenGL version.
Required Open GLVersion Expression¶
-
name:
requiredOpenGLVersionExpression
, type:
String
, default:
.*
¶ A regular expression which must match the OpenGL version.
Open GLVendor¶
-
name:
openGLVendor
, type:
String
, persistent:
no
¶ Shows the identification string of the OpenGL vendor.
Required Open GLVendor Expression¶
-
name:
requiredOpenGLVendorExpression
, type:
String
, default:
.*
¶ A regular expression which must match the OpenGL vendor.
Number Of Cores¶
-
name:
numberOfCores
, type:
Integer
, persistent:
no
¶ Shows the number of available cpu cores.
Required Number Of Cores¶
-
name:
requiredNumberOfCores
, type:
Integer
, default:
1
, minimum:
1
¶ The number of required cpu cores.
Number Of Physical Processors¶
-
name:
numberOfPhysicalProcessors
, type:
Integer
, persistent:
no
¶ Shows the number of available physical processors.
Required Number Of Physical Processors¶
-
name:
requiredNumberOfPhysicalProcessors
, type:
Integer
, default:
1
, minimum:
1
¶ The number of required physical processors.
Number Of Virtual Processors¶
-
name:
numberOfVirtualProcessors
, type:
Integer
, persistent:
no
¶ Shows the number of available virtual processors.
Required Number Of Virtual Processors¶
-
name:
requiredNumberOfVirtualProcessors
, type:
Integer
, default:
1
, minimum:
1
¶ The number of required virtual processors.
Cpu Vendor Id¶
-
name:
cpuVendorId
, type:
String
, persistent:
no
¶ Shows the identification string of the CPU vendor.
Required Cpu Vendor Id Expression¶
-
name:
requiredCpuVendorIdExpression
, type:
String
, default:
.*
¶ A regular expression which must match the identification string of the CPU vendor.
Cpu Model Id¶
-
name:
cpuModelId
, type:
String
, persistent:
no
¶ Shows the identification string of the CPU model.
Required Cpu Model Id Expression¶
-
name:
requiredCpuModelIdExpression
, type:
String
, default:
.*
¶ A regular expression which must match the identification string of the CPU model.
Directory1¶
-
name:
directory1
, type:
String
¶ Directory which must exist, be rewritable and where at least ‘Min Mio. Free Bytes 1’ must be available (or empty for no checks).
Min Mio. Free Bytes 1¶
-
name:
minRequiredDiskSpace1InMioBytes
, type:
Integer
, default:
0
, minimum:
0
¶ The number of free mio. bytes needed in directory1 (or 0 for no check).
Directory2¶
-
name:
directory2
, type:
String
¶ Directory which must exist, be rewritable and where at least ‘Min Mio. Free Bytes 2’ must be available (or empty for no checks).
Min Mio. Free Bytes 2¶
-
name:
minRequiredDiskSpace2InMioBytes
, type:
Integer
, default:
0
, minimum:
0
¶ The number of free mio. bytes needed in directory2 (or 0 for no check).
Directory3¶
-
name:
directory3
, type:
String
¶ Directory which must exist, be rewritable and where at least ‘Min Mio. Free Bytes 3’ must be available (or empty for no checks).
Min Mio. Free Bytes 3¶
-
name:
minRequiredDiskSpace3InMioBytes
, type:
Integer
, default:
0
, minimum:
0
¶ The number of free mio. bytes needed in directory3 (or 0 for no check).
Physical System Memory¶
-
name:
physicalSystemMemory
, type:
Integer
, persistent:
no
¶ Shows the amount of available physical system memory in MB.
Required Physical System Memory¶
-
name:
requiredPhysicalSystemMemory
, type:
Integer
, default:
4096
, minimum:
1
¶ The amount of required physical system memory in MB.
Gpu Memory¶
-
name:
gpuMemory
, type:
Integer
, persistent:
no
¶ Shows the amount of available gpu memory in MB.
Required GPUMemory¶
-
name:
requiredGPUMemory
, type:
Integer
, default:
1024
, minimum:
1
¶ The amount of required gpu memory in MB.
Texture Memory¶
-
name:
textureMemory
, type:
Integer
, persistent:
no
¶ Shows the amount of available texture memory in MB.
Required Texture Memory¶
-
name:
requiredTextureMemory
, type:
Integer
, default:
1024
, minimum:
1
¶ The amount of required texture memory in MB.
Common MeVis App Data Dir¶
-
name:
commonMeVisAppDataDir
, type:
String
, persistent:
no
¶ Shows MLABFileManager.getCommonMeVisAppDataDir().
Local Application Caches Directory¶
-
name:
localApplicationCachesDirectory
, type:
String
, persistent:
no
¶ Shows MLABFileManager.getLocalApplicationCachesDirectory().
Local Application Support Directory¶
-
name:
localApplicationSupportDirectory
, type:
String
, persistent:
no
¶ Shows MLABFileManager.getLocalApplicationSupportDirectory().
User Application Caches Directory¶
-
name:
userApplicationCachesDirectory
, type:
String
, persistent:
no
¶ Shows MLABFileManager.userApplicationCachesDirectory().
User Application Support Directory¶
-
name:
userApplicationSupportDirectory
, type:
String
, persistent:
no
¶ Shows MLABFileManager.getUserApplicationSupportDirectory().
Test Passed¶
-
name:
testPassed
, type:
Bool
, persistent:
no
¶ Enabled if all system resources are sufficient or disabled otherwise.