{"body":"(pypy37) dev@brick:~/Downloads/awnsample/dockerbuild$ cat xx.py\n\nimport time\nfrom cffi import FFI\ntry:\n    import _foo_ffi\nexcept:\n    from cffi import FFI\n    foo_ffi = FFI()\n    foo_ffi.cdef(\"\"\"\n        void* malloc(long);\n        void free(void*);\n        long strlen(char*);\n    \"\"\")\n    foo_ffi.set_source(\"_foo_ffi\", \"\")\n    foo_ffi.compile()\n    import _foo_ffi\n\nffi = FFI()\nl = [None]\nt0 = time.time()\nfor i in range(10000000):\n    x = ffi.new(\"char[]\", 1024)\n    x[100] = b'\\x00'\n    _foo_ffi.lib.strlen(x)\n    l[-1] = x\n\nprint(\"FFI.new %.2f\" % (time.time() - t0))\n\nt1 = time.time()\n\nfor i in range(10000000):\n    x = _foo_ffi.lib.malloc(1024)\n    ffi.cast(\"char*\", x)[100] = b'\\x00'\n    _foo_ffi.lib.strlen(x)\n    _foo_ffi.lib.free(x)\nprint(\"Raw malloc %.2f\" % (time.time() - t1))\n(pypy37) dev@brick:~/Downloads/awnsample/dockerbuild$ python xx.py \nFFI.new 5.02\nRaw malloc 1.07\n(pypy37) dev@brick:~/Downloads/awnsample/dockerbuild$ \n","name":"","extension":"txt","url":"https://www.irccloud.com/pastebin/wgJ5wxl9","modified":1632393006,"id":"wgJ5wxl9","size":943,"lines":41,"own_paste":false,"theme":"","date":1632393006}