{"action":"created","issue":{"url":"https://api.github.com/repos/ipld/js-ipld-dag-cbor/issues/23","repository_url":"https://api.github.com/repos/ipld/js-ipld-dag-cbor","labels_url":"https://api.github.com/repos/ipld/js-ipld-dag-cbor/issues/23/labels{/name}","comments_url":"https://api.github.com/repos/ipld/js-ipld-dag-cbor/issues/23/comments","events_url":"https://api.github.com/repos/ipld/js-ipld-dag-cbor/issues/23/events","html_url":"https://github.com/ipld/js-ipld-dag-cbor/issues/23","id":183099712,"number":23,"title":"Encoding performance","user":{"login":"parkan","id":204986,"avatar_url":"https://avatars.githubusercontent.com/u/204986?v=3","gravatar_id":"","url":"https://api.github.com/users/parkan","html_url":"https://github.com/parkan","followers_url":"https://api.github.com/users/parkan/followers","following_url":"https://api.github.com/users/parkan/following{/other_user}","gists_url":"https://api.github.com/users/parkan/gists{/gist_id}","starred_url":"https://api.github.com/users/parkan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/parkan/subscriptions","organizations_url":"https://api.github.com/users/parkan/orgs","repos_url":"https://api.github.com/users/parkan/repos","events_url":"https://api.github.com/users/parkan/events{/privacy}","received_events_url":"https://api.github.com/users/parkan/received_events","type":"User","site_admin":false},"labels":[{"id":469345861,"url":"https://api.github.com/repos/ipld/js-ipld-dag-cbor/labels/js-ipfs-ready","name":"js-ipfs-ready","color":"22ad70","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2016-10-14T16:56:20Z","updated_at":"2016-11-12T20:58:19Z","closed_at":null,"body":"We're running some large-scale ingestions involving CBOR encoding and we're seeing this kind of performance per 1k objects:\n\npure js: 1.3s\n[tinycbor](https://github.com/01org/tinycbor) (C/C++): 0.06s\n\nIn this case the pure js impl is node-cbor because #22 blocks us from using js-ipld directly, but I would expect similar performance here. This is a huge difference and can potentially make or break the use case for larger datasets. We're exploring a couple of different paths here:\n- optional gyp/ffi dependency when running in node\n- webasm\n\nWould love to work w/upstream here to deliver something that works for everyone. wasm certainly seems like a future-looking option that would work isomorphically (in a couple of months, at least 😄 ) so I am interested in exploring this path.\n\nCorresponding issue in mediachain/aleph#27 /cc @yusefnapora\n"},"comment":{"url":"https://api.github.com/repos/ipld/js-ipld-dag-cbor/issues/comments/260147937","html_url":"https://github.com/ipld/js-ipld-dag-cbor/issues/23#issuecomment-260147937","issue_url":"https://api.github.com/repos/ipld/js-ipld-dag-cbor/issues/23","id":260147937,"user":{"login":"dignifiedquire","id":790842,"avatar_url":"https://avatars.githubusercontent.com/u/790842?v=3","gravatar_id":"","url":"https://api.github.com/users/dignifiedquire","html_url":"https://github.com/dignifiedquire","followers_url":"https://api.github.com/users/dignifiedquire/followers","following_url":"https://api.github.com/users/dignifiedquire/following{/other_user}","gists_url":"https://api.github.com/users/dignifiedquire/gists{/gist_id}","starred_url":"https://api.github.com/users/dignifiedquire/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dignifiedquire/subscriptions","organizations_url":"https://api.github.com/users/dignifiedquire/orgs","repos_url":"https://api.github.com/users/dignifiedquire/repos","events_url":"https://api.github.com/users/dignifiedquire/events{/privacy}","received_events_url":"https://api.github.com/users/dignifiedquire/received_events","type":"User","site_admin":false},"created_at":"2016-11-12T20:58:19Z","updated_at":"2016-11-12T20:58:19Z","body":"Current results, node-cbor is the default what we currently use and fast-cbor are my optimizations. Every run consists of encoding 83 small objects to cbor with most of the possible values being used.\r\n\r\n```\r\nBrowser (Chrome)\r\nencode vectors - node-cbor - 83 x 232 ops/sec ±5.34% (46 runs sampled)\r\nencode vectors - fast-cbor - 83 x 4,248 ops/sec ±1.39% (53 runs sampled)\r\n\r\nNode.js 7\r\nencode vectors - node-cbor - 83 x 301 ops/sec ±5.38% (60 runs sampled)\r\nencode vectors - fast-cbor - 83 x 3,584 ops/sec ±2.36% (74 runs sampled)\r\n```"}}
{"actor":{"display_login":"dignifiedquire"}}