Detect if renderer ran out of memory

This commit is contained in:
Laurent Clouet
2016-04-03 20:49:24 +02:00
parent 34386ec9c1
commit 32540e7712
2 changed files with 12 additions and 0 deletions

View File

@@ -37,6 +37,7 @@ public class Error {
NETWORK_ISSUE(11),
RENDERER_CRASHED(12),
RENDERER_OUT_OF_VIDEO_MEMORY(13),
RENDERER_OUT_OF_MEMORY(21),
RENDERER_KILLED(14),
RENDERER_KILLED_BY_USER(20),
RENDERER_MISSING_LIBRARIES(15),

View File

@@ -592,6 +592,17 @@ public class Job {
// what(): boost::filesystem::create_directory: Permission denied: "/var/local/cache"
return Error.Type.NOOUTPUTFILE;
}
else if (line.indexOf("terminate called after throwing an instance of 'std::bad_alloc'") != -1) {
// Fra:80 Mem:1333.02M (0.00M, Peak 1651.23M) | Mem:780.37M, Peak:780.37M | Scene, RenderLayer | Updating Mesh BVH Plane.083 171/2 | Building BVH
// Fra:80 Mem:1333.02M (0.00M, Peak 1651.23M) | Mem:780.37M, Peak:780.37M | Scene, RenderLayer | Updating Mesh BVH Mesh 172/2 | Building BVH
// Fra:80 Mem:1333.02M (0.00M, Peak 1651.23M) | Mem:780.37M, Peak:780.37M | Scene, RenderLayer | Updating Mesh BVH Mesh 172/2 | Packing BVH triangles and strands
// Fra:80 Mem:1333.02M (0.00M, Peak 1651.23M) | Mem:780.37M, Peak:780.37M | Scene, RenderLayer | Updating Mesh BVH Mesh 172/2 | Packing BVH nodes
// Fra:80 Mem:1333.02M (0.00M, Peak 1651.23M) | Mem:780.37M, Peak:780.37M | Scene, RenderLayer | Updating Scene BVH | Building
// Fra:80 Mem:1333.02M (0.00M, Peak 1651.23M) | Mem:780.37M, Peak:780.37M | Scene, RenderLayer | Updating Scene BVH | Building BVH
// terminate called after throwing an instance of 'std::bad_alloc'
// what(): std::bad_alloc
return Error.Type.RENDERER_OUT_OF_MEMORY;
}
return Type.OK;
}