Commit 72bac8b8 authored by rv3Dcv's avatar rv3Dcv

Add execution time measurement

parent 953c314c
......@@ -264,6 +264,10 @@ PrefabInstance:
propertyPath: doCollisionTestTwo
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3901088838006394844, guid: 0e128b35dc3ea6746b6de609560d672d, type: 3}
propertyPath: doCollisionTestFour
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3901088838006394844, guid: 0e128b35dc3ea6746b6de609560d672d, type: 3}
propertyPath: doCollisionTestThree
value: 1
......@@ -322,7 +326,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 4233146888435007091, guid: 0e128b35dc3ea6746b6de609560d672d, type: 3}
propertyPath: constraintSolverSteps
value: 1000
value: 100
objectReference: {fileID: 0}
- target: {fileID: 4233146888435007091, guid: 0e128b35dc3ea6746b6de609560d672d, type: 3}
propertyPath: spheres.Array.data[0]
......
......@@ -334,6 +334,10 @@ PrefabInstance:
propertyPath: m_Layer
value: 6
objectReference: {fileID: 0}
- target: {fileID: 5473619483809765880, guid: 805cc1f2f40a41e4e9f4704ac26dd5d7, type: 3}
propertyPath: m_IsActive
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5834078635128846381, guid: 805cc1f2f40a41e4e9f4704ac26dd5d7, type: 3}
propertyPath: m_Materials.Array.data[0]
value:
......
......@@ -17,6 +17,7 @@ namespace GuidewireSim
*/
float sphereRadius = 5f; //!< The radius of the sphere elements of the guidewire.
public bool collided = false;
private void Start()
{
......@@ -27,6 +28,7 @@ namespace GuidewireSim
{
CollisionPair registeredCollision = new CollisionPair(sphere, vesselCollider, sphereID);
registeredCollisions.Add(registeredCollision);
collided = true;
}
public void ResetRegisteredCollisions()
......
......@@ -25,6 +25,10 @@ namespace GuidewireSim
}
deltaPosition = CalculateDeltaPosition(spherePositionPrediction, closestSurfacePoint, normalVector);
// Vector3 correction = spherePositionPrediction + 0.001f * deltaPosition;
// float difference = Vector3.Distance(spherePositionPrediction, correction);
// Debug.Log(difference.ToString("e3"));
}
}
}
\ No newline at end of file
......@@ -101,6 +101,17 @@ public class SimulationLoop : MonoBehaviour
public int SpheresCount { get; private set; } //!< The count of all #spheres of the guidewire.
public int CylinderCount { get; private set; } //!< The count of all #cylinders of the guidewire.
float elapsedTime = 0;
float timeConstraintSolving = 0;
float timeUpdateStep = 0;
float timePredictionStep = 0;
float timeAdaptCalculationsStep = 0;
float timeSetCollidersStep = 0;
float timeCompleteFrame = 0;
float timeCompleteFrameMeasure = 0;
float timeMeasure = 0;
float measurePoint = 5f;
private void Awake()
{
Assert.IsFalse(spheres.Length == 0);
......@@ -151,6 +162,8 @@ public class SimulationLoop : MonoBehaviour
if (ExecuteSingleLoopTest) return;
PerformSimulationLoop();
elapsedTime += Time.deltaTime;
}
/**
......@@ -191,13 +204,49 @@ public class SimulationLoop : MonoBehaviour
*/
public void PerformSimulationLoop()
{
// CollisionDetection();
// GenerateCollisionConstraints();
if (collisionHandler.collided)
{
timeMeasure = Time.realtimeSinceStartup;
timeCompleteFrameMeasure = Time.realtimeSinceStartup;
}
PerformConstraintSolvingStep();
if (collisionHandler.collided)
{
timeConstraintSolving = Time.realtimeSinceStartup - timeMeasure;
timeMeasure = Time.realtimeSinceStartup;
}
PerformUpdateStep();
if (collisionHandler.collided)
{
timeUpdateStep = Time.realtimeSinceStartup - timeMeasure;
timeMeasure = Time.realtimeSinceStartup;
}
PerformPredictionStep();
if (collisionHandler.collided)
{
timePredictionStep = Time.realtimeSinceStartup - timeMeasure;
timeMeasure = Time.realtimeSinceStartup;
}
AdaptCalculations();
if (collisionHandler.collided)
{
timeAdaptCalculationsStep = Time.realtimeSinceStartup - timeMeasure;
timeMeasure = Time.realtimeSinceStartup;
}
SetCollidersStep();
if (collisionHandler.collided)
{
timeSetCollidersStep = Time.realtimeSinceStartup - timeMeasure;
timeCompleteFrame = Time.realtimeSinceStartup - timeCompleteFrameMeasure;
Time.timeScale = 0f;
Debug.Log("execution time constraint solving: " + timeConstraintSolving.ToString("F7"));
Debug.Log("execution time update step: " + timeUpdateStep.ToString("F7"));
Debug.Log("execution time prediction step: " + timePredictionStep.ToString("F7"));
Debug.Log("execution time adapt calculations: " + timeAdaptCalculationsStep.ToString("F7"));
Debug.Log("execution time set colliders: " + timeSetCollidersStep.ToString("F7"));
Debug.Log("execution time whole frame: " + timeCompleteFrame.ToString("F7"));
}
}
/**
......
......@@ -6,34 +6,34 @@ EditorUserSettings:
serializedVersion: 4
m_ConfigSettings:
RecentlyUsedScenePath-0:
value: 224247031146467c18070827072a4d1529360b39293c357f1e2a183de7f37b1bedeb3ae0f43330320d07fc28373d0431f7355b38e6030f19141dc23e03f61d1a05cc0ec037cd0c14fb100ccbf231deedd2e9e1e4d1fffeeedfcda9f3fae4a0edfbf8b1e2
value: 224247031146467c18070827072a4d1529360b39293c357f1e2a183de7f37b1bedeb3ae0f43330320d07fc28373d0431f735585bc51b020e030bee3121ed191e18d111d31fe51a0fc32915dec822fdecdbd1ebdfd6e2f3c1e8deb2fbf5fefab8a4bfb0f5a3bce5
flags: 0
RecentlyUsedScenePath-1:
value: 224247031146467c18070827072a4d1529360b39293c357f1e2a183de7f37b1bedeb3ae0f43330320d07fc28373d0431f7355b38e6030f19141dc23e03f61d1a05cc0ec037cd0c14f80914cbdf189ff6dbdfc0f3
value: 224247031146467c18070827072a4d1529360b39293c357f1e2a183de7f37b1bedeb3ae0f43330320d07fc28373d0431f7355b38e6030f19141dc22314ec182318d51dfa2fc61608d22f1ddcc41cdff79bc3dae3ccf2
flags: 0
RecentlyUsedScenePath-2:
value: 224247031146467c18070827072a4d1529360b39293c357f1e2a183de7f37b1bedeb3ae0f43330320d07fc28373d0431f7355b38e6030f19141dc23e03f61d1a05cc0ec037cd0c14f80914cbdf18eed6dbdfc0f3eeeaf5d1dfd1b4bce1fee7ecec
value: 224247031146467c18070827072a4d1529360b39293c357f1e2a183de7f37b1bedeb3ae0f43330320d07fc28373d0431f7355b38e6030f19141dc23810ed191c04d637c710cd1c08d85709c0c409c8
flags: 0
RecentlyUsedScenePath-3:
value: 224247031146467c18070827072a4d1529360b39293c357f1e2a183de7f37b1bedeb3ae0f43330320d07fc28373d0431f7355a5bc51b020e030bee3130f0020710fa3ddd1bc50f10ce264e80d813d8f7cc
value: 224247031146467c18070827072a4d1529360b39293c357f1e2a183de7f37b1bedeb3ae0f43330320d07fc28373d0431f7355b38e6030f19141dc23e03f61d1a05cc0ec029d81719d91c23fbc314c5fae3d7c6e3d9e5f396cbd1a9e6ed
flags: 0
RecentlyUsedScenePath-4:
value: 224247031146467c18070827072a4d1529360b39293c357f1e2a183de7f37b1bedeb3ae0f43330320d07fc28373d0431f7355a5bc51b020e030bee3130f0020710fa3ddd1bc50f10ce264f80d813d8f7cc
value: 224247031146467c18070827072a4d1529360b39293c357f1e2a183de7f37b1bedeb3ae0f43330320d07fc28373d0431f735585bc51b020e030bee313cfa031b33cc1ed008cb1e08c21612f1f813d8f7cce0d5f8d1eae9cc9e8deee7faf9fae1
flags: 0
RecentlyUsedScenePath-5:
value: 224247031146467c18070827072a4d1529360b39293c357f1e2a183de7f37b1bedeb3ae0f43330320d07fc28373d0431f7355b38e6030f19141dc23e03f61d1a05cc0ec037cd0c14fb100ccbf228dfeac1cfe2ebcae2e6d6ca91b5fcfde4f7
value: 224247031146467c18070827072a4d1529360b39293c357f1e2a183de7f37b1bedeb3ae0f43330320d07fc28373d0431f735585bc51b020e030bee313cfa031b33cc1ed008cb1e08c21612f1f813d8f7cce0d5f8d1eae9cc9e8eeee7faf9fae1
flags: 0
RecentlyUsedScenePath-6:
value: 224247031146467c18070827072a4d1529360b39293c357f1e2a183de7f37b1bedeb3ae0f43330320d07fc28373d0431f7355c5bc51b020e030bee3130f0020710fa3ddd1bc50f10ce264f80d813d8f7cc
value: 224247031146467c18070827072a4d1529360b39293c357f1e2a183de7f37b1bedeb3ae0f43330320d07fc28373d0431f735585bc51b020e030bee313cfa031b33cc1ed008cb1e08c21612f1f813d8f7cce0d5f8d1eae9cc90caaefbe0e9
flags: 0
RecentlyUsedScenePath-7:
value: 224247031146467c18070827072a4d1529360b39293c357f1e2a183de7f37b1bedeb3ae0f43330320d07fc28373d0431f7355a5bc51b020e030bee3130f0020710fa3ddd1bc50f10ce264d80d813d8f7cc
value: 224247031146467c18070827072a4d1529360b39293c357f1e2a183de7f37b1bedeb3ae0f43330320d07fc28373d0431f7355b38e6030f19141db5011dfb595d04cb11d103
flags: 0
RecentlyUsedScenePath-8:
value: 224247031146467c18070827072a4d1529360b39293c357f1e2a183de7f37b1bedeb3ae0f43330320d07fc28373d0431f735585bc51b020e030bee3121ed191e18d111d31fe51a0fc32915dec822fdecdbd1ebdfd6e2f3c1e8deb2fbf5fefab6e0ffacefb3
value: 224247031146467c18070827072a4d1529360b39293c357f1e2a183de7f37b1bedeb3ae0f43330320d07fc28373d0431f7355a5bc51b020e030bee3130f0020710fa3ddd1bc50f10ce264f80d813d8f7cc
flags: 0
RecentlyUsedScenePath-9:
value: 224247031146467c18070827072a4d1529360b39293c357f1e2a183de7f37b1bedeb3ae0f43330320d07fc28373d0431f735585bc51b020e030bee3121ed191e18d111d31fe51a0fc32915dec822fdecdbd1ebdfd6e2f3c1e8deb2fbf5fefab8a4bfb0f5a3bce5
value: 224247031146467c18070827072a4d1529360b39293c357f1e2a183de7f37b1bedeb3ae0f43330320d07fc28373d0431f7355c5bc51b020e030bee3130f0020710fa3ddd1bc50f10ce264f80d813d8f7cc
flags: 0
vcSharedLogLevel:
value: 0d5e400f0650
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment