{"push_id":1220807212,"size":3,"distinct_size":3,"ref":"refs/heads/cm-13.0","head":"da315fca21ae149de7e2e52d6a2cd548770d44ec","before":"20346c6e5a7691afc5047baa726eb83fb82e99cc","commits":[{"sha":"87aa0cd2f04ef367be3dc1d2d67bd73d5ea1eed1","author":{"name":"Jason Hrycay","email":"652a6fc3fad95b6d27622faaaff5b0ae1c38fc63@motorola.com"},"message":"msm: memutils: memcpy, memmove, copy_page optimization\n\nPreload farther to take advantage of the memory bus, and assume\n64-byte cache lines.  Unroll some pairs of ldm/stm as well, for\nunexplainable reasons.\n\nFuture enhancements should include,\n\n- #define for how far to preload, possibly defined separately for\n  memcpy, copy_*_user\n- Tuning for misaligned buffers\n- Tuning for memmove\n- Tuning for small buffers\n- Understanding mechanism behind ldm/stm unroll causing some gains\n  in copy_to_user\n\nBASELINE (msm8960pro):\n======================================================================\nmemcpy 1000MB at 5MB       : took 808850 usec, bandwidth 1236.236 MB/s\ncopy_to_user 1000MB at 5MB : took 810071 usec, bandwidth 1234.234 MB/s\ncopy_from_user 1000MB at 5M: took 942926 usec, bandwidth 1060.060 MB/s\nmemmove 1000GB at 5MB      : took 848588 usec, bandwidth 1178.178 MB/s\ncopy_to_user 1000GB at 4kB : took 847916 usec, bandwidth 1179.179 MB/s\ncopy_from_user 1000GB at 4k: took 935113 usec, bandwidth 1069.069 MB/s\ncopy_page 1000GB at 4kB    : took 779459 usec, bandwidth 1282.282 MB/s\n\nTHIS PATCH:\n======================================================================\nmemcpy 1000MB at 5MB       : took 346223 usec, bandwidth 2888.888 MB/s\ncopy_to_user 1000MB at 5MB : took 348084 usec, bandwidth 2872.872 MB/s\ncopy_from_user 1000MB at 5M: took 348176 usec, bandwidth 2872.872 MB/s\nmemmove 1000GB at 5MB      : took 348267 usec, bandwidth 2871.871 MB/s\ncopy_to_user 1000GB at 4kB : took 377018 usec, bandwidth 2652.652 MB/s\ncopy_from_user 1000GB at 4k: took 371829 usec, bandwidth 2689.689 MB/s\ncopy_page 1000GB at 4kB    : took 383763 usec, bandwidth 2605.605 MB/s\n\nChange-Id: I65962bfc692ab57d4942d4065405c16379cfd1aa\nSigned-off-by: Chris Fries <C.Fries@motorola.com>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>\nSigned-off-by: Jose Adolfo Galdamez <josegalre@pac-rom.com>","distinct":true,"url":"https://api.github.com/repos/Arc-Team/android_kernel_lge_g3/commits/87aa0cd2f04ef367be3dc1d2d67bd73d5ea1eed1"},{"sha":"442dfaad11dcc976c2009bfb5c952a3dfec81132","author":{"name":"Hong-Mei Li","email":"f21d9f2a543f8ebb541fdb6fdb4841297cdcb27a@motorola.com"},"message":"msm: memutils: memcpy, memmove optimization\n\n1. To fit 8x26 64-bytes cache line size, we change preload steps as 64Bytes.\n2. According to tune result, change preload distance as 5 cache lines.\n3. According to tune result, re-arrange the ld/str order as back-to-back\n   for copy_from_user.\n\nThe markable improvement:\n\tmemcpy : 5%\n\tcopy_to_user : 9%\n\tcopy_from_user : 13%\n\tmemmove : 37%\n\nRaw data is as below:\n\nBASELINE:\n\tmemcpy 1000MB at 5MB       : took 1547098 usec, bandwidth 646.646 MB/s\n\tcopy_to_user 1000MB at 5MB : took 1704308 usec, bandwidth 586.586 MB/s\n\tcopy_from_user 1000MB at 5M: took 1777090 usec, bandwidth 562.562 MB/s\n\tmemmove 1000GB at 5MB      : took 1066205 usec, bandwidth 937.937 MB/s\n\tcopy_to_user 1000GB at 4kB : took 1774866 usec, bandwidth 563.563 MB/s\n\tcopy_from_user 1000GB at 4k: took 1797654 usec, bandwidth 556.556 MB/s\n\tcopy_page 1000GB at 4kB    : took 1644606 usec, bandwidth 608.608 MB/s\n\tmemmove 1000GB at 4kB      : took 1236227 usec, bandwidth 808.808 MB/s\n\nTHIS PATCH:\n\tmemcpy 1000MB at 5MB       : took 1475835 usec, bandwidth 677.677 MB/s\n\tcopy_to_user 1000MB at 5MB : took 1559060 usec, bandwidth 641.641 MB/s\n\tcopy_from_user 1000MB at 5M: took 1561603 usec, bandwidth 640.640 MB/s\n\tmemmove 1000GB at 5MB      : took 861664 usec, bandwidth 1160.160 MB/s\n\tcopy_to_user 1000GB at 4kB : took 1673501 usec, bandwidth 597.597 MB/s\n\tcopy_from_user 1000GB at 4k: took 1674006 usec, bandwidth 597.597 MB/s\n\tcopy_page 1000GB at 4kB    : took 1691358 usec, bandwidth 591.591 MB/s\n\tmemmove 1000GB at 4kB      : took 882985 usec, bandwidth 1132.132 MB/s\n\nChange-Id: I6a5a73673f3b9d67881bd63911a228ed1e33e58d\nSigned-off-by: Hong-Mei Li <a21834@motorola.com>\nReviewed-on: http://gerrit.pcs.mot.com/550383\nSLT-Approved: Slta Waiver <sltawvr@motorola.com>\nTested-by: Jira Key <jirakey@motorola.com>\nReviewed-by: Klocwork kwcheck <klocwork-kwcheck@sourceforge.mot.com>\nReviewed-by: Check Patch <CHEKPACH@motorola.com>\nReviewed-by: Yi-Wei Zhao <gbjc64@motorola.com>\nSubmit-Approved: Jira Key <jirakey@motorola.com>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>\nSigned-off-by: Jose Adolfo Galdamez <josegalre@pac-rom.com>","distinct":true,"url":"https://api.github.com/repos/Arc-Team/android_kernel_lge_g3/commits/442dfaad11dcc976c2009bfb5c952a3dfec81132"},{"sha":"da315fca21ae149de7e2e52d6a2cd548770d44ec","author":{"name":"Hong-Mei Li","email":"f21d9f2a543f8ebb541fdb6fdb4841297cdcb27a@motorola.com"},"message":"msm: memutils: memcpy, memmove optimization for 8974\n\nAccording to tune result, change preload distance to 10\ncache lines for 8974.\nAnd considering bkk-b is sharing code for 8974, 8226, 8x16,\nwe seperate the code for 8974 specially.\n\nThe markable improvement:\n    memcpy : 67%\n    copy_to_user : 37%\n    copy_from_user : 37%\n    memmove : 70%\n\nRaw data is as below:\n\nBEFORE:\n\tmemcpy 1000MB at 5MB       : took 659744 usec, bandwidth 1515.515 MB/s\n\tcopy_to_user 1000MB at 5MB : took 681202 usec, bandwidth 1467.467 MB/s\n\tcopy_from_user 1000MB at 5M: took 682052 usec, bandwidth 1466.466 MB/s\n\tmemmove 1000GB at 5MB      : took 763133 usec, bandwidth 1310.310 MB/s\n\tcopy_to_user 1000GB at 4kB : took 714487 usec, bandwidth 1399.399 MB/s\n\tcopy_from_user 1000GB at 4k: took 699861 usec, bandwidth 1428.428 MB/s\n\tcopy_page 1000GB at 4kB    : took 634857 usec, bandwidth 1575.575 MB/s\n\tmemmove 1000GB at 4kB      : took 791389 usec, bandwidth 1263.263 MB/s\n\tmemcpy 1000MB at 5MB       : took 659744 usec, bandwidth 1515.515 MB/s\n\nAFTER:\n\tmemcpy 1000MB at 5MB       : took 395178 usec, bandwidth 2530.530 MB/s\n\tcopy_to_user 1000MB at 5MB : took 497667 usec, bandwidth 2009.009 MB/s\n\tcopy_from_user 1000MB at 5M: took 496832 usec, bandwidth 2012.012 MB/s\n\tmemmove 1000GB at 5MB      : took 449217 usec, bandwidth 2226.226 MB/s\n\tcopy_to_user 1000GB at 4kB : took 489006 usec, bandwidth 2044.044 MB/s\n\tcopy_from_user 1000GB at 4k: took 483982 usec, bandwidth 2066.066 MB/s\n\tcopy_page 1000GB at 4kB    : took 377170 usec, bandwidth 2651.651 MB/s\n\tmemmove 1000GB at 4kB      : took 483015 usec, bandwidth 2070.070 MB/s\n\nChange-Id: I9dde73be8428c41fc6e11bb444e20723876c0eb1\nSigned-off-by: Hong-Mei Li <a21834@motorola.com>\nReviewed-on: http://gerrit.mot.com/634422\nTested-by: Jira Key <jirakey@motorola.com>\nReviewed-by: Yi-Wei Zhao <gbjc64@motorola.com>\nSLTApproved: Christopher Fries <c.fries@motorola.com>\nReviewed-by: John Zafiris <johnz@motorola.com>\nSubmit-Approved: Jira Key <jirakey@motorola.com>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>\nSigned-off-by: Jose Adolfo Galdamez <josegalre@pac-rom.com>","distinct":true,"url":"https://api.github.com/repos/Arc-Team/android_kernel_lge_g3/commits/da315fca21ae149de7e2e52d6a2cd548770d44ec"}]}
{"actor":{"display_login":"JoseGalRe"}}