Construct CallCompiledFunctionKwArgsVariableStarDict

Performance Diagrams

Construct CallCompiledFunctionKwArgsVariableStarDict 0010000000010000000020000000020000000030000000030000000040000000040000000050000000050000000060000000060000000070000000070000000080000000080000000090000000090000000010000000001000000000CPython 3.12Nuitka (main)Nuitka (develop)Nuitka (factory)66945976887.27884615384615347.2551454748333CPython 3.121052140907237.75961538461542257.58963031258594Nuitka (main)1054657375388.2403846153846257.0Nuitka (develop)1054657375538.7211538461538257.0Nuitka (factory)Construct CallCompiledFunctionKwArgsVariableStarDictTicks Construct CallCompiledFunctionKwArgsVariableStarDict 00100000000100000000200000000200000000300000000300000000400000000400000000500000000500000000600000000600000000700000000700000000800000000800000000CPython 3.11Nuitka (main)Nuitka (develop)Nuitka (factory)66875023688.11538461538461306.903901086695CPython 3.11837948451240.03846153846155257.00809665283134Nuitka (main)837975907391.96153846153845257.0Nuitka (develop)837975907543.8846153846154257.0Nuitka (factory)Construct CallCompiledFunctionKwArgsVariableStarDictTicks Construct CallCompiledFunctionKwArgsVariableStarDict 00100000000100000000200000000200000000300000000300000000400000000400000000500000000500000000600000000600000000700000000700000000800000000800000000CPython 3.10Nuitka (main)Nuitka (develop)Nuitka (factory)66699244688.11538461538461302.67057647205047CPython 3.10818209345240.03846153846155257.000105404849Nuitka (main)818209694391.96153846153845257.0Nuitka (develop)818209694543.8846153846154257.0Nuitka (factory)Construct CallCompiledFunctionKwArgsVariableStarDictTicks Construct CallCompiledFunctionKwArgsVariableStarDict 00100000000100000000200000000200000000300000000300000000400000000400000000500000000500000000600000000600000000700000000700000000CPython 2.7Nuitka (main)Nuitka (develop)Nuitka (factory)60405731288.11538461538461299.2318697545454CPython 2.7728569163240.03846153846155257.0000729234707Nuitka (main)728569378391.96153846153845257.0Nuitka (develop)728569378543.8846153846154257.0Nuitka (factory)Construct CallCompiledFunctionKwArgsVariableStarDictTicks

Source Code with Construct

    "f": 9,
}


def calledRepeatedly():
    a = getUnknownValue()
    b = getUnknownValue()
    c = getUnknownValue()

    compiled_f = compiled_func

    # This is supposed to make a call to a compiled function, which is
    # being optimized separately.
    # construct_begin
    compiled_f(a=a, b=b, c=c, **arg_dict)
    compiled_f(a=a, b=b, c=c, **arg_dict)
    compiled_f(a=a, b=b, c=c, **arg_dict)
    # construct_alternative



    return compiled_f


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

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

    "f": 9,
}


def calledRepeatedly():
    a = getUnknownValue()
    b = getUnknownValue()
    c = getUnknownValue()

    compiled_f = compiled_func

    # This is supposed to make a call to a compiled function, which is
    # being optimized separately.
    # construct_begin



    # construct_alternative
    pass
    # construct_end

    return compiled_f


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

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.