New submission from Wang Chun <yaohua2...@gmail.com>: uuid.uuid1() currently uses two different ways to generate a uuid. If the system call "uuid_generate_time" is available, uuid1() uses the system call via the ctypes interface, otherwise, it uses pure Python code to generate a uuid. The problem is, the C interface "uuid_generate_time" is even slower than the Python code. The ctypes interface is too slow. According to my test, it took 55 microseconds to generate a uuid via ctypes interface but only 45 microseconds via the Python code. I also tried to test the performance of the "uuid_generate_time" C API itself. It takes C code 12 microseconds. Most of the time were wasted on ctypes. I believe we need to drop ctypes and write a Python extensions in C for this job.
---------- components: Library (Lib) messages: 86840 nosy: wangchun severity: normal status: open title: uuid.uuid1() is too slow type: performance versions: Python 2.4, Python 2.5, Python 2.6, Python 2.7, Python 3.0, Python 3.1 _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue5885> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com