{"action":"opened","number":8488,"pull_request":{"url":"https://api.github.com/repos/pytorch/pytorch/pulls/8488","id":194953736,"node_id":"MDExOlB1bGxSZXF1ZXN0MTk0OTUzNzM2","html_url":"https://github.com/pytorch/pytorch/pull/8488","diff_url":"https://github.com/pytorch/pytorch/pull/8488.diff","patch_url":"https://github.com/pytorch/pytorch/pull/8488.patch","issue_url":"https://api.github.com/repos/pytorch/pytorch/issues/8488","number":8488,"state":"open","locked":false,"title":"Vectorize non-contiguous unary operations","user":{"login":"cpuhrsch","id":1716488,"node_id":"MDQ6VXNlcjE3MTY0ODg=","avatar_url":"https://avatars1.githubusercontent.com/u/1716488?v=4","gravatar_id":"","url":"https://api.github.com/users/cpuhrsch","html_url":"https://github.com/cpuhrsch","followers_url":"https://api.github.com/users/cpuhrsch/followers","following_url":"https://api.github.com/users/cpuhrsch/following{/other_user}","gists_url":"https://api.github.com/users/cpuhrsch/gists{/gist_id}","starred_url":"https://api.github.com/users/cpuhrsch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cpuhrsch/subscriptions","organizations_url":"https://api.github.com/users/cpuhrsch/orgs","repos_url":"https://api.github.com/users/cpuhrsch/repos","events_url":"https://api.github.com/users/cpuhrsch/events{/privacy}","received_events_url":"https://api.github.com/users/cpuhrsch/received_events","type":"User","site_admin":false},"body":"Timings are on a single core. This increases performance on non-contiguous tensors and also introduces the dlopen bugfix for glibc2.23. I'm comparing to conda intel which comes with mkl vml. It's based [on this commit](https://github.com/pytorch/benchmark/tree/f8fb533f5c62f0766eef2e67d372e94b8be7312f/timing/python) for pytorch's benchmark repo.\r\n\r\nCommand\r\n```\r\nOMP_NUM_THREADS=1 taskset -c 0,40 python run.py --include NumpyComparison --benchmark-min-time 1 --benchmark-out result.csv\r\n```\r\n\r\n\r\nTimings for this branch\r\n\r\n```\r\nframework                                   NumPy          Torch     Ratio  Better\r\ncont  trans function       dim mag\r\nFalse False ('cos', 'cos') 3   1         6.310349       6.771949  0.931837   False\r\n                               3        12.634588      10.322803  1.223949    True\r\n                               6     10299.704082    8064.798387  1.277119    True\r\n                               7    110513.100000   96036.545455  1.150740    True\r\n            ('exp', 'exp') 3   1         6.477992       6.827134  0.948860   False\r\n                               3        16.686640       9.990119  1.670315    True\r\n                               6     13033.610390    7340.496350  1.775576    True\r\n                               7    137158.500000   89514.916667  1.532242    True\r\n            ('log', 'log') 3   1         6.364118       6.930657  0.918256   False\r\n                               3        17.396047       9.848998  1.766276    True\r\n                               6     15274.075758    7652.954198  1.995840    True\r\n                               7    159386.857143   92383.454545  1.725275    True\r\n            ('sin', 'sin') 3   1         6.298647       6.779787  0.929033   False\r\n                               3        12.298670      10.299140  1.194145    True\r\n                               6     10647.148936    8156.365854  1.305379    True\r\n                               7    114057.000000   97171.818182  1.173766    True\r\n      True  ('cos', 'cos') 3   1         6.642220       7.266582  0.914078   False\r\n                               3        13.836532      20.914805  0.661566   False\r\n                               6     13777.602740    9458.358491  1.456659    True\r\n                               7    153595.714286  102202.300000  1.502860    True\r\n            ('exp', 'exp') 3   1         6.833274       7.232200  0.944840   False\r\n                               3        17.882019      19.649125  0.910067   False\r\n                               6     17613.649123    8795.368421  2.002605    True\r\n                               7    192875.500000   95177.454545  2.026483    True\r\n            ('log', 'log') 3   1         6.727563       7.402366  0.908839   False\r\n                               3        18.332869      20.912888  0.876630   False\r\n                               6     19654.823529    8995.785714  2.184892    True\r\n                               7    214381.800000   97150.545455  2.206697    True\r\n            ('sin', 'sin') 3   1         6.696391       7.255480  0.922942   False\r\n                               3        13.992233      20.934322  0.668387   False\r\n                               6     14259.211268    9433.254717  1.511590    True\r\n                               7    158259.285714  100854.700000  1.569181    True\r\nTrue  False ('cos', 'cos') 3   1         5.451552       5.808338  0.938573   False\r\n                               3        11.722829       7.211628  1.625545    True\r\n                               6      1366.180328    1368.277702  0.998467   False\r\n                               7     15121.134328   15160.833333  0.997381   False\r\n            ('exp', 'exp') 3   1         5.661175       5.787654  0.978147   False\r\n                               3        14.307734       6.509026  2.198138    True\r\n                               6       661.407407     657.211564  1.006384    True\r\n                               7      9322.444444    9297.796296  1.002651    True\r\n            ('log', 'log') 3   1         5.472372       5.759750  0.950106   False\r\n                               3        15.269631       6.705778  2.277086    True\r\n                               6       877.996488     878.066725  0.999920   False\r\n                               7     10498.708333   10456.833333  1.004005    True\r\n            ('sin', 'sin') 3   1         5.454824       5.736337  0.950925   False\r\n                               3        11.120482       7.188580  1.546965    True\r\n                               6      1373.364883    1377.009629  0.997353   False\r\n                               7     14258.267606   14320.771429  0.995635   False\r\n      True  ('cos', 'cos') 3   1         6.725612       7.284210  0.923314   False\r\n                               3        12.472111      18.216174  0.684672   False\r\n                               6      8231.040984    2782.111111  2.958559    True\r\n                               7     86455.250000   24163.428571  3.577938    True\r\n            ('exp', 'exp') 3   1         6.810451       7.177235  0.948896   False\r\n                               3        16.781367      16.938591  0.990718   False\r\n                               6     12028.500000    2078.879418  5.786050    True\r\n                               7    126168.375000   16491.786885  7.650376    True\r\n            ('log', 'log') 3   1         6.872798       7.318716  0.939072   False\r\n                               3        18.108228      17.763702  1.019395    True\r\n                               6     14101.042254    2317.958333  6.083389    True\r\n                               7    146356.571429   18708.240741  7.823107    True\r\n            ('sin', 'sin') 3   1         6.676422       7.192040  0.928307   False\r\n                               3        12.926711      18.286454  0.706901   False\r\n                               6      8658.715517    2936.346041  2.948806    True\r\n                               7     90595.500000   24111.261905  3.757394    True\r\n```\r\n\r\nTimings for master\r\n\r\n```\r\nframework                                   NumPy          Torch     Ratio  Better\r\ncont  trans function       dim mag\r\nFalse False ('cos', 'cos') 3   1         6.586941       7.759424  0.848896   False\r\n                               3        12.744532      13.246761  0.962087   False\r\n                               6     10424.447917   11819.717647  0.881954   False\r\n                               7    111012.200000  125720.875000  0.883005   False\r\n            ('exp', 'exp') 3   1         6.734793       7.862136  0.856611   False\r\n                               3        22.828356      24.064508  0.948632   False\r\n                               6     12778.556962   16185.145161  0.789524   False\r\n                               7    135787.375000  167084.500000  0.812687   False\r\n            ('log', 'log') 3   1         6.774166       7.958301  0.851208   False\r\n                               3        24.137598      25.305520  0.953847   False\r\n                               6     15302.045455   18744.296296  0.816357   False\r\n                               7    158471.428571  192788.500000  0.821996   False\r\n            ('sin', 'sin') 3   1         6.589613       7.822480  0.842394   False\r\n                               3        13.120115      13.850776  0.947248   False\r\n                               6     10715.500000   12301.036585  0.871105   False\r\n                               7    114386.444444  128376.250000  0.891025   False\r\n      True  ('cos', 'cos') 3   1         7.063273       6.764206  1.044213    True\r\n                               3        14.788647      13.938441  1.060997    True\r\n                               6     13761.972603   11991.773810  1.147618    True\r\n                               7    153566.857143  127468.875000  1.204740    True\r\n            ('exp', 'exp') 3   1         7.282833       6.797468  1.071404    True\r\n                               3        18.717540      19.730844  0.948644   False\r\n                               6     17420.517241   16536.426230  1.053463    True\r\n                               7    189548.833333  168339.333333  1.125993    True\r\n            ('log', 'log') 3   1         7.298477       6.925113  1.053914    True\r\n                               3        20.269497      21.096909  0.960780   False\r\n                               6     19703.313725   19280.038462  1.021954    True\r\n                               7    212846.400000  195164.333333  1.090601    True\r\n            ('sin', 'sin') 3   1         7.092799       6.850010  1.035443    True\r\n                               3        14.821764      14.470412  1.024281    True\r\n                               6     14263.816901   12509.237500  1.140263    True\r\n                               7    156744.000000  132050.125000  1.187004    True\r\nTrue  False ('cos', 'cos') 3   1         5.275213       5.935803  0.888711   False\r\n                               3        11.152936       7.268619  1.534395    True\r\n                               6      1365.641201    1364.477490  1.000853    True\r\n                               7     15163.393939   15178.666667  0.998994   False\r\n            ('exp', 'exp') 3   1         5.399442       6.112014  0.883414   False\r\n                               3        14.124011       6.799218  2.077299    True\r\n                               6       666.608667     662.673956  1.005938    True\r\n                               7      9339.148148    9381.785047  0.995455   False\r\n            ('log', 'log') 3   1         5.370895       5.992497  0.896270   False\r\n                               3        15.068251       6.929594  2.174478    True\r\n                               6       883.460247     884.798408  0.998488   False\r\n                               7     10559.210526   10656.936170  0.990830   False\r\n            ('sin', 'sin') 3   1         5.343930       6.017947  0.887999   False\r\n                               3        10.789219       7.319043  1.474130    True\r\n                               6      1379.637241    1383.666667  0.997088   False\r\n                               7     14616.724638   14630.289855  0.999073   False\r\n      True  ('cos', 'cos') 3   1        12.344486      10.990152  1.123232    True\r\n                               3        12.943676      13.241339  0.977520   False\r\n                               6      8218.237705    9542.552381  0.861220   False\r\n                               7     86500.666667   96038.363636  0.900689   False\r\n            ('exp', 'exp') 3   1         7.315555       6.772219  1.080230    True\r\n                               3        17.222295      19.164488  0.898657   False\r\n                               6     11814.258824   15118.895522  0.781423   False\r\n                               7    123850.222222  154562.428571  0.801296   False\r\n            ('log', 'log') 3   1         7.326224       6.892506  1.062926    True\r\n                               3        18.713280      20.415297  0.916630   False\r\n                               6     14049.000000   17884.982143  0.785519   False\r\n                               7    146420.000000  182284.000000  0.803252   False\r\n            ('sin', 'sin') 3   1        12.294462      10.954392  1.122332    True\r\n                               3        19.056337      17.742964  1.074022    True\r\n                               6      8634.318966   10068.000000  0.857600   False\r\n                               7     90584.750000  101639.500000  0.891236   False\r\n```\r\n\r\nIntel pstat was used to turn off turbo mode and set min and max freq to 100.\r\n\r\n\r\nlscpu\r\n\r\n```\r\n$ lscpu\r\nArchitecture:          x86_64\r\nCPU op-mode(s):        32-bit, 64-bit\r\nByte Order:            Little Endian\r\nCPU(s):                80\r\nOn-line CPU(s) list:   0-79\r\nThread(s) per core:    2\r\nCore(s) per socket:    20\r\nSocket(s):             2\r\nNUMA node(s):          2\r\nVendor ID:             GenuineIntel\r\nCPU family:            6\r\nModel:                 79\r\nModel name:            Intel(R) Xeon(R) CPU E5-2698 v4 @ 2.20GHz\r\nStepping:              1\r\nCPU MHz:               2200.257\r\nCPU max MHz:           3600.0000\r\nCPU min MHz:           1200.0000\r\nBogoMIPS:              4400.92\r\nVirtualization:        VT-x\r\nL1d cache:             32K\r\nL1i cache:             32K\r\nL2 cache:              256K\r\nL3 cache:              51200K\r\nNUMA node0 CPU(s):     0-19,40-59\r\nNUMA node1 CPU(s):     20-39,60-79\r\nFlags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch epb intel_pt tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm cqm rdseed adx smap xsaveopt cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local dtherm ida arat pln pts\r\n```","created_at":"2018-06-14T16:41:36Z","updated_at":"2018-06-14T16:41:36Z","closed_at":null,"merged_at":null,"merge_commit_sha":null,"assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/pytorch/pytorch/pulls/8488/commits","review_comments_url":"https://api.github.com/repos/pytorch/pytorch/pulls/8488/comments","review_comment_url":"https://api.github.com/repos/pytorch/pytorch/pulls/comments{/number}","comments_url":"https://api.github.com/repos/pytorch/pytorch/issues/8488/comments","statuses_url":"https://api.github.com/repos/pytorch/pytorch/statuses/12ee05ddffc07c574ee840a216e33f5acbccaca1","head":{"label":"cpuhrsch:vnunary","ref":"vnunary","sha":"12ee05ddffc07c574ee840a216e33f5acbccaca1","user":{"login":"cpuhrsch","id":1716488,"node_id":"MDQ6VXNlcjE3MTY0ODg=","avatar_url":"https://avatars1.githubusercontent.com/u/1716488?v=4","gravatar_id":"","url":"https://api.github.com/users/cpuhrsch","html_url":"https://github.com/cpuhrsch","followers_url":"https://api.github.com/users/cpuhrsch/followers","following_url":"https://api.github.com/users/cpuhrsch/following{/other_user}","gists_url":"https://api.github.com/users/cpuhrsch/gists{/gist_id}","starred_url":"https://api.github.com/users/cpuhrsch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cpuhrsch/subscriptions","organizations_url":"https://api.github.com/users/cpuhrsch/orgs","repos_url":"https://api.github.com/users/cpuhrsch/repos","events_url":"https://api.github.com/users/cpuhrsch/events{/privacy}","received_events_url":"https://api.github.com/users/cpuhrsch/received_events","type":"User","site_admin":false},"repo":{"id":118517346,"node_id":"MDEwOlJlcG9zaXRvcnkxMTg1MTczNDY=","name":"pytorch","full_name":"cpuhrsch/pytorch","owner":{"login":"cpuhrsch","id":1716488,"node_id":"MDQ6VXNlcjE3MTY0ODg=","avatar_url":"https://avatars1.githubusercontent.com/u/1716488?v=4","gravatar_id":"","url":"https://api.github.com/users/cpuhrsch","html_url":"https://github.com/cpuhrsch","followers_url":"https://api.github.com/users/cpuhrsch/followers","following_url":"https://api.github.com/users/cpuhrsch/following{/other_user}","gists_url":"https://api.github.com/users/cpuhrsch/gists{/gist_id}","starred_url":"https://api.github.com/users/cpuhrsch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cpuhrsch/subscriptions","organizations_url":"https://api.github.com/users/cpuhrsch/orgs","repos_url":"https://api.github.com/users/cpuhrsch/repos","events_url":"https://api.github.com/users/cpuhrsch/events{/privacy}","received_events_url":"https://api.github.com/users/cpuhrsch/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/cpuhrsch/pytorch","description":"Tensors and Dynamic neural networks in Python  with strong GPU acceleration","fork":true,"url":"https://api.github.com/repos/cpuhrsch/pytorch","forks_url":"https://api.github.com/repos/cpuhrsch/pytorch/forks","keys_url":"https://api.github.com/repos/cpuhrsch/pytorch/keys{/key_id}","collaborators_url":"https://api.github.com/repos/cpuhrsch/pytorch/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/cpuhrsch/pytorch/teams","hooks_url":"https://api.github.com/repos/cpuhrsch/pytorch/hooks","issue_events_url":"https://api.github.com/repos/cpuhrsch/pytorch/issues/events{/number}","events_url":"https://api.github.com/repos/cpuhrsch/pytorch/events","assignees_url":"https://api.github.com/repos/cpuhrsch/pytorch/assignees{/user}","branches_url":"https://api.github.com/repos/cpuhrsch/pytorch/branches{/branch}","tags_url":"https://api.github.com/repos/cpuhrsch/pytorch/tags","blobs_url":"https://api.github.com/repos/cpuhrsch/pytorch/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/cpuhrsch/pytorch/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/cpuhrsch/pytorch/git/refs{/sha}","trees_url":"https://api.github.com/repos/cpuhrsch/pytorch/git/trees{/sha}","statuses_url":"https://api.github.com/repos/cpuhrsch/pytorch/statuses/{sha}","languages_url":"https://api.github.com/repos/cpuhrsch/pytorch/languages","stargazers_url":"https://api.github.com/repos/cpuhrsch/pytorch/stargazers","contributors_url":"https://api.github.com/repos/cpuhrsch/pytorch/contributors","subscribers_url":"https://api.github.com/repos/cpuhrsch/pytorch/subscribers","subscription_url":"https://api.github.com/repos/cpuhrsch/pytorch/subscription","commits_url":"https://api.github.com/repos/cpuhrsch/pytorch/commits{/sha}","git_commits_url":"https://api.github.com/repos/cpuhrsch/pytorch/git/commits{/sha}","comments_url":"https://api.github.com/repos/cpuhrsch/pytorch/comments{/number}","issue_comment_url":"https://api.github.com/repos/cpuhrsch/pytorch/issues/comments{/number}","contents_url":"https://api.github.com/repos/cpuhrsch/pytorch/contents/{+path}","compare_url":"https://api.github.com/repos/cpuhrsch/pytorch/compare/{base}...{head}","merges_url":"https://api.github.com/repos/cpuhrsch/pytorch/merges","archive_url":"https://api.github.com/repos/cpuhrsch/pytorch/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/cpuhrsch/pytorch/downloads","issues_url":"https://api.github.com/repos/cpuhrsch/pytorch/issues{/number}","pulls_url":"https://api.github.com/repos/cpuhrsch/pytorch/pulls{/number}","milestones_url":"https://api.github.com/repos/cpuhrsch/pytorch/milestones{/number}","notifications_url":"https://api.github.com/repos/cpuhrsch/pytorch/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/cpuhrsch/pytorch/labels{/name}","releases_url":"https://api.github.com/repos/cpuhrsch/pytorch/releases{/id}","deployments_url":"https://api.github.com/repos/cpuhrsch/pytorch/deployments","created_at":"2018-01-22T21:26:11Z","updated_at":"2018-05-14T16:24:59Z","pushed_at":"2018-06-14T16:24:09Z","git_url":"git://github.com/cpuhrsch/pytorch.git","ssh_url":"git@github.com:cpuhrsch/pytorch.git","clone_url":"https://github.com/cpuhrsch/pytorch.git","svn_url":"https://github.com/cpuhrsch/pytorch","homepage":"http://pytorch.org","size":60250,"stargazers_count":0,"watchers_count":0,"language":"C++","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"other","name":"Other","spdx_id":null,"url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"pytorch:master","ref":"master","sha":"a4bd4f6c6fbaba47844f41f7cb6b5ceb9973e7b4","user":{"login":"pytorch","id":21003710,"node_id":"MDEyOk9yZ2FuaXphdGlvbjIxMDAzNzEw","avatar_url":"https://avatars3.githubusercontent.com/u/21003710?v=4","gravatar_id":"","url":"https://api.github.com/users/pytorch","html_url":"https://github.com/pytorch","followers_url":"https://api.github.com/users/pytorch/followers","following_url":"https://api.github.com/users/pytorch/following{/other_user}","gists_url":"https://api.github.com/users/pytorch/gists{/gist_id}","starred_url":"https://api.github.com/users/pytorch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pytorch/subscriptions","organizations_url":"https://api.github.com/users/pytorch/orgs","repos_url":"https://api.github.com/users/pytorch/repos","events_url":"https://api.github.com/users/pytorch/events{/privacy}","received_events_url":"https://api.github.com/users/pytorch/received_events","type":"Organization","site_admin":false},"repo":{"id":65600975,"node_id":"MDEwOlJlcG9zaXRvcnk2NTYwMDk3NQ==","name":"pytorch","full_name":"pytorch/pytorch","owner":{"login":"pytorch","id":21003710,"node_id":"MDEyOk9yZ2FuaXphdGlvbjIxMDAzNzEw","avatar_url":"https://avatars3.githubusercontent.com/u/21003710?v=4","gravatar_id":"","url":"https://api.github.com/users/pytorch","html_url":"https://github.com/pytorch","followers_url":"https://api.github.com/users/pytorch/followers","following_url":"https://api.github.com/users/pytorch/following{/other_user}","gists_url":"https://api.github.com/users/pytorch/gists{/gist_id}","starred_url":"https://api.github.com/users/pytorch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pytorch/subscriptions","organizations_url":"https://api.github.com/users/pytorch/orgs","repos_url":"https://api.github.com/users/pytorch/repos","events_url":"https://api.github.com/users/pytorch/events{/privacy}","received_events_url":"https://api.github.com/users/pytorch/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/pytorch/pytorch","description":"Tensors and Dynamic neural networks in Python  with strong GPU acceleration","fork":false,"url":"https://api.github.com/repos/pytorch/pytorch","forks_url":"https://api.github.com/repos/pytorch/pytorch/forks","keys_url":"https://api.github.com/repos/pytorch/pytorch/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pytorch/pytorch/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pytorch/pytorch/teams","hooks_url":"https://api.github.com/repos/pytorch/pytorch/hooks","issue_events_url":"https://api.github.com/repos/pytorch/pytorch/issues/events{/number}","events_url":"https://api.github.com/repos/pytorch/pytorch/events","assignees_url":"https://api.github.com/repos/pytorch/pytorch/assignees{/user}","branches_url":"https://api.github.com/repos/pytorch/pytorch/branches{/branch}","tags_url":"https://api.github.com/repos/pytorch/pytorch/tags","blobs_url":"https://api.github.com/repos/pytorch/pytorch/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pytorch/pytorch/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pytorch/pytorch/git/refs{/sha}","trees_url":"https://api.github.com/repos/pytorch/pytorch/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pytorch/pytorch/statuses/{sha}","languages_url":"https://api.github.com/repos/pytorch/pytorch/languages","stargazers_url":"https://api.github.com/repos/pytorch/pytorch/stargazers","contributors_url":"https://api.github.com/repos/pytorch/pytorch/contributors","subscribers_url":"https://api.github.com/repos/pytorch/pytorch/subscribers","subscription_url":"https://api.github.com/repos/pytorch/pytorch/subscription","commits_url":"https://api.github.com/repos/pytorch/pytorch/commits{/sha}","git_commits_url":"https://api.github.com/repos/pytorch/pytorch/git/commits{/sha}","comments_url":"https://api.github.com/repos/pytorch/pytorch/comments{/number}","issue_comment_url":"https://api.github.com/repos/pytorch/pytorch/issues/comments{/number}","contents_url":"https://api.github.com/repos/pytorch/pytorch/contents/{+path}","compare_url":"https://api.github.com/repos/pytorch/pytorch/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pytorch/pytorch/merges","archive_url":"https://api.github.com/repos/pytorch/pytorch/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pytorch/pytorch/downloads","issues_url":"https://api.github.com/repos/pytorch/pytorch/issues{/number}","pulls_url":"https://api.github.com/repos/pytorch/pytorch/pulls{/number}","milestones_url":"https://api.github.com/repos/pytorch/pytorch/milestones{/number}","notifications_url":"https://api.github.com/repos/pytorch/pytorch/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pytorch/pytorch/labels{/name}","releases_url":"https://api.github.com/repos/pytorch/pytorch/releases{/id}","deployments_url":"https://api.github.com/repos/pytorch/pytorch/deployments","created_at":"2016-08-13T05:26:41Z","updated_at":"2018-06-14T16:37:35Z","pushed_at":"2018-06-14T16:37:35Z","git_url":"git://github.com/pytorch/pytorch.git","ssh_url":"git@github.com:pytorch/pytorch.git","clone_url":"https://github.com/pytorch/pytorch.git","svn_url":"https://github.com/pytorch/pytorch","homepage":"http://pytorch.org","size":58450,"stargazers_count":16387,"watchers_count":16387,"language":"C++","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":3718,"mirror_url":null,"archived":false,"open_issues_count":1231,"license":{"key":"other","name":"Other","spdx_id":null,"url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":3718,"open_issues":1231,"watchers":16387,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/pytorch/pytorch/pulls/8488"},"html":{"href":"https://github.com/pytorch/pytorch/pull/8488"},"issue":{"href":"https://api.github.com/repos/pytorch/pytorch/issues/8488"},"comments":{"href":"https://api.github.com/repos/pytorch/pytorch/issues/8488/comments"},"review_comments":{"href":"https://api.github.com/repos/pytorch/pytorch/pulls/8488/comments"},"review_comment":{"href":"https://api.github.com/repos/pytorch/pytorch/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/pytorch/pytorch/pulls/8488/commits"},"statuses":{"href":"https://api.github.com/repos/pytorch/pytorch/statuses/12ee05ddffc07c574ee840a216e33f5acbccaca1"}},"author_association":"CONTRIBUTOR","merged":false,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":null,"comments":0,"review_comments":0,"maintainer_can_modify":true,"commits":1,"additions":268,"deletions":196,"changed_files":8}}
{"actor":{"display_login":"cpuhrsch"}}