Construct LocalVariableDeletion

Performance Diagrams

Construct LocalVariableDeletion 00100001000020000200003000030000400004000050000500006000060000700007000080000800009000090000100000100000CPython 3.12Nuitka (main)Nuitka (develop)Nuitka (factory)1784190.625461.2987545915612CPython 3.12102969246.875257.0Nuitka (main)101976403.125259.3831014861082Nuitka (develop)98066559.375268.7667135814588Nuitka (factory)Construct LocalVariableDeletionTicks Construct LocalVariableDeletion 00100001000020000200003000030000400004000050000500006000060000700007000080000800009000090000100000100000CPython 3.11Nuitka (main)Nuitka (develop)Nuitka (factory)1435890.625468.7368017966538CPython 3.11100289246.875257.0Nuitka (main)100174403.125257.2833637710095Nuitka (develop)99838559.375258.11127878891546Nuitka (factory)Construct LocalVariableDeletionTicks Construct LocalVariableDeletion 00100001000020000200003000030000400004000050000500006000060000700007000080000800009000090000100000100000CPython 3.10Nuitka (main)Nuitka (develop)Nuitka (factory)1403090.625469.4676172026644CPython 3.10100036246.875257.0716169105466Nuitka (main)100065403.125257.0Nuitka (develop)99981559.375257.20744208572125Nuitka (factory)Construct LocalVariableDeletionTicks Construct LocalVariableDeletion 00100001000020000200003000030000400004000050000500006000060000700007000080000800009000090000100000100000CPython 2.7Nuitka (main)Nuitka (develop)Nuitka (factory)882190.625482.3173365384615CPython 2.7100000246.875257.0Nuitka (main)100000403.125257.0Nuitka (develop)100000559.375257.0Nuitka (factory)Construct LocalVariableDeletionTicks

Source Code with Construct

    module_value2 = local_value

    if module_value2 is None:
        # construct_begin
        del local_value
        # construct_end

        another_local_value = module_value3

    module_value2 = module_value1

    local_value = module_value3
    return local_value


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

    module_value2 = local_value

    if module_value2 is None:
        # construct_begin



        another_local_value = module_value3

    module_value2 = module_value1

    local_value = module_value3
    return local_value


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.