- Status Closed
- Percent Complete
- Task Type Patches
- Category
-
Assigned To
hohensoh - Operating System
- Severity Low
- Priority Very Low
- Reported Version
- Due in Version Undecided
-
Due Date
Undecided
- Votes
- Private
FS#2069 - Way faster memset() and memcpy() in assembler
New memset(), in assembler:
- approx 50% faster for small blocks (0..4 bytes): less
overhead
- 2.2x as fast for long aligned large blocks
- almost 13x as fast for not long aligned large blocks
- 1.9x / 8x for typical 112 byte block
- 28 bytes smaller :)
New memcpy(), in assembler:
- 20..30% fast for small blocks (0..8 bytes): less overhead
- 1,2x to 6.6x as fast for large blocks (depends on source
and destination alignment
- 62 bytes larger :(
Detailed timing test results for both routines can be
found in the attached spreadsheet (open office format).
Loading...
Available keyboard shortcuts
- Alt + ⇧ Shift + l Login Dialog / Logout
- Alt + ⇧ Shift + a Add new task
- Alt + ⇧ Shift + m My searches
- Alt + ⇧ Shift + t focus taskid search
Tasklist
- o open selected task
- j move cursor down
- k move cursor up
Task Details
- n Next task
- p Previous task
- Alt + ⇧ Shift + e ↵ Enter Edit this task
- Alt + ⇧ Shift + w watch task
- Alt + ⇧ Shift + y Close Task
Task Editing
- Alt + ⇧ Shift + s save task
- Shortened memset() by 4 bytes (stupid thinking)
- Corrected same stupid thinking for memcpy() (no shortening
here)
- Updated timing spreadsheet