Python
# !/usr/bin/python3
# -*- coding: utf-8 -*-

'''
Dictionary flip profiling
'''

import cProfile, pstats
from datetime import datetime
from faker import Faker

fake = Faker()
res = assoc_mock_array = {}

Faker.seed(0)
assoc_mock_array = fake.pydict(nb_elements = 900, variable_nb_elements = False, value_types = ['int'])

i = 1
while i < 22:
    for k, v in assoc_mock_array.copy().items():
        new_key = (k[:6] + k[:2] + str(i)) if len(k + k) > 8 else k + k
        assoc_mock_array[new_key] = 999999-v+i
    i += 1

def custom_timer():
    return int(datetime.now().timestamp()*1000000)

# ===================

def swap_loop(mock_dict):
    return dict((v,k) for k,v in mock_dict.items())

def swap_zip(mock_dict):
    return dict(zip(mock_dict.values(), mock_dict.keys()))

def swap_map(mock_dict):
    return dict(map(reversed, mock_dict.items()))

def swap_slice(mock_dict):
    return {mock_dict[i]:i for i in mock_dict}

def swap_map_lambda(mock_dict):
    return dict(map(lambda x: x[::-1], mock_dict.items()))

pr = cProfile.Profile(custom_timer, 0.000001, subcalls=False, builtins=False)

pr.enable()
swap_loop(assoc_mock_array.copy())
swap_map(assoc_mock_array.copy())
swap_map_lambda(assoc_mock_array.copy())
swap_slice(assoc_mock_array.copy())
swap_zip(assoc_mock_array.copy())
pr.disable()

pstats.Stats(pr).sort_stats('name').print_stats('swap_')

print('End!')
45186 function calls in 0.455 seconds

   Ordered by: function name
   List reduced from 7 to 5 due to restriction <'swap_'>

   ncalls  tottime  percall  cumtime  percall filename:lineno(function)
        1    0.101    0.101    0.212    0.212 script.py:30(swap_loop)
        1    0.016    0.016    0.016    0.016 script.py:36(swap_map)
        1    0.104    0.104    0.220    0.220 script.py:42(swap_map_lambda)
        1    0.004    0.004    0.004    0.004 script.py:39(swap_slice)
        1    0.003    0.003    0.003    0.003 script.py:33(swap_zip)


End!