Construct CallUncompiledFunctionComplexArgs

Performance Diagrams

Construct CallUncompiledFunctionComplexArgs 0010000000100000002000000020000000300000003000000040000000400000005000000050000000600000006000000070000000700000008000000080000000CPython 3.12Nuitka (main)Nuitka (develop)Nuitka (factory)8154164988.95192307692307257.0CPython 3.1252757199242.31730769230768344.23248204966166Nuitka (main)52728089395.6826923076923344.32070112462975Nuitka (develop)52728089549.0480769230769344.32070112462975Nuitka (factory)Construct CallUncompiledFunctionComplexArgsTicks Construct CallUncompiledFunctionComplexArgs 001000000010000000200000002000000030000000300000004000000040000000500000005000000060000000600000007000000070000000CPython 3.11Nuitka (main)Nuitka (develop)Nuitka (factory)7408769988.95192307692307257.0CPython 3.1141104860242.31730769230768367.01241846088794Nuitka (main)41098216395.6826923076923367.0345791520357Nuitka (develop)41098216549.0480769230769367.0345791520357Nuitka (factory)Construct CallUncompiledFunctionComplexArgsTicks Construct CallUncompiledFunctionComplexArgs 001000000010000000200000002000000030000000300000004000000040000000500000005000000060000000600000007000000070000000CPython 3.10Nuitka (main)Nuitka (develop)Nuitka (factory)7974172088.95192307692307257.0CPython 3.1045511194242.31730769230768363.0785947190119Nuitka (main)45510293395.6826923076923363.0813868704922Nuitka (develop)45510293549.0480769230769363.0813868704922Nuitka (factory)Construct CallUncompiledFunctionComplexArgsTicks Construct CallUncompiledFunctionComplexArgs 001000000010000000200000002000000030000000300000004000000040000000CPython 2.7Nuitka (main)Nuitka (develop)Nuitka (factory)4883970388.95192307692307257.0CPython 2.740953430242.31730769230768296.90235947128764Nuitka (main)40953400395.6826923076923296.90251126298745Nuitka (develop)40953400549.0480769230769296.90251126298745Nuitka (factory)Construct CallUncompiledFunctionComplexArgsTicks

Source Code with Construct

    # being optimized separately.

    # Force a frame for now.
    args = a

    # construct_begin
    python_f(3, *args)
    # construct_alternative



    return python_f, args


for x in itertools.repeat(None, 50000):
    calledRepeatedly(python_func)

print("OK.")

#     Python test originally created or extracted from other peoples work. The
#     parts from me are licensed as below. It is at least Free Software where
#     it's copied from other people. In these cases, that will normally be
#     indicated.
#
#     Licensed under the Apache License, Version 2.0 (the "License");
#     you may not use this file except in compliance with the License.
#     You may obtain a copy of the License at
#
#         http://www.apache.org/licenses/LICENSE-2.0
#
#     Unless required by applicable law or agreed to in writing, software
#     distributed under the License is distributed on an "AS IS" BASIS,
#     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#     See the License for the specific language governing permissions and
#     limitations under the License.

Source Code without Construct

    # being optimized separately.

    # Force a frame for now.
    args = a

    # construct_begin

    # construct_alternative
    pass
    # construct_end

    return python_f, args


for x in itertools.repeat(None, 50000):
    calledRepeatedly(python_func)

print("OK.")

#     Python test originally created or extracted from other peoples work. The
#     parts from me are licensed as below. It is at least Free Software where
#     it's copied from other people. In these cases, that will normally be
#     indicated.
#
#     Licensed under the Apache License, Version 2.0 (the "License");
#     you may not use this file except in compliance with the License.
#     You may obtain a copy of the License at
#
#         http://www.apache.org/licenses/LICENSE-2.0
#
#     Unless required by applicable law or agreed to in writing, software
#     distributed under the License is distributed on an "AS IS" BASIS,
#     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#     See the License for the specific language governing permissions and
#     limitations under the License.