[issue27575] dict viewkeys intersection slow for large dicts

2016-09-06 Thread David Su
David Su added the comment: ping -- ___ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue27575> ___ ___ Python-bugs-list mailing list

[issue27575] dict viewkeys intersection slow for large dicts

2016-08-01 Thread David Su
Changes by David Su <dysu1...@gmail.com>: Added file: http://bugs.python.org/file43961/performance_test.sh ___ Python tracker <rep...@bugs.python.org> <http://bugs.python

[issue27575] dict viewkeys intersection slow for large dicts

2016-08-01 Thread David Su
Changes by David Su <dysu1...@gmail.com>: Added file: http://bugs.python.org/file43960/dictview_intersection_test.py ___ Python tracker <rep...@bugs.python.org> <http://bugs.python

[issue27575] dict viewkeys intersection slow for large dicts

2016-08-01 Thread David Su
David Su added the comment: Attached is a patch that I had been working on. Could you please review and provide me with some feedback? Thanks! -- keywords: +patch Added file: http://bugs.python.org/file43959/dict_view_intersection.patch ___ Python

[issue27575] dict viewkeys intersection slow for large dicts

2016-07-23 Thread David Su
David Su added the comment: I am trying to implement the following algorithm: http://blog.faroo.com/2012/06/07/improved-edit-distance-based-spelling-correction/ This algorithm is used for fast nearest neighbor queries for spell correction. Given a corpus of strings, for each string s, I

[issue27575] dict viewkeys intersection slow for large dicts

2016-07-20 Thread David Su
David Su added the comment: Here are some tests that I ran: Using current naive viewkeys intersection: $ python -m timeit -n 100 -s "d = dict.fromkeys(xrange(1000), 0)" "d.viewkeys() & {0}" 100 loops, best of 3: 447 msec per loop Nearly half a second per iterat

[issue27575] dict viewkeys intersection slow for large dicts

2016-07-20 Thread David Su
Changes by David Su <dysu1...@gmail.com>: -- nosy: +rhettinger ___ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue27575> ___ __

[issue27575] dict viewkeys intersection slow for large dicts

2016-07-19 Thread David Su
New submission from David Su: In dictobject.c, the function dictviews_and performs a very expensive set creation operation on the keys of the self dict object: >From Python 2.7: ... static PyObject* dictviews_and(PyObject* self, PyObject *other) { PyObject *result = PySet_New(s