public void Profile()
        {
            _profilingApi.SuspendProfiling();

            var profiledObject  = CreateProfiledObject();
            var warmUpInputData = CreateInputData();

            var jitWarmUp = Execute(profiledObject, warmUpInputData);

            var inputData = CreateInputData();

            _profilingApi.ResumeProfiling();

            var theRealProfiling = Execute(profiledObject, inputData);

            _profilingApi.StopProfiling(GetType());

            MakeReleaseBuildNotOmitTheResults(jitWarmUp, theRealProfiling);
        }