1. 30 Oct, 2018 5 commits
  2. 29 Oct, 2018 1 commit
    • mcarilli's avatar
      Merging in fused adam optimizer, additional DDP features tested in 18.10 (#60) · e0bc5d62
      mcarilli authored
      * test passes
      
      * notes
      
      * Using C++-side flatten and unflatten functions
      
      * Adding csrc
      
      * Persistent synchronization event so it doesn't need to be created and destroyed each time
      
      * Interop with parameter flattening in SSD
      
      * Added deterministic option to imagenet main.py
      
      * Adding options to split gradient averaging and allreduce in pure fp32
      
      * Fixing allreduce_maybe_retain call
      
      * Fixing allreduce_fallback
      
      * Also sync active_i_buckets from rank 0
      
      * Making retain_allreduce_buffers compatible with/orthogonal to delay_allreduce=True|False
      
      * Correcting syntax error, now all seems to work with SSD
      
      * Optional cpp extension build
      
      * Add mixed precision adam optimizer (#59)
      
      * Add FusedAdam Optimizer to Apex that places all the math into a cuda kernel.
      
      * Added fixes to fused_adam to get it to work with network.
      
      * wip work on python interface for adam with options
      
      * fix dispatch for halfs, add python options to handle optional half gradients and params
      
      * cleanup, get rid of grid-stride loop
      e0bc5d62
  3. 23 Oct, 2018 1 commit
    • jjsjann123's avatar
      [syncBN] (#48) · 81eef1ef
      jjsjann123 authored
      * [syncBN]
        added syncBN in native pure python apex
        added fused cuda kernels used for sync BN. Using welford for mean/var
          optional installation using 'python setup.py install --cuda_ext'
        added unit test with side to side comparison between apex sync BN with
          PyTorch BN. Notice that for pytorch BN implementation, because of
          numerical issue for mean/var, the output will be slightly off.
      
      * [syncBN PR]
        added fp16 support
        addressing review comments on:
          1. updating last pow 2
          2. look for import error when importing syncBN kernel
      
      * [syncBN PR]
        added convert function to insert SyncBatchNorm
        refactored some kernel code
      
      * fixing type issue (fp16/fp32/fp64)
      added Kahan summation
      editing unit test to use pytorch primitive ops with double, passing reasonable tests now
      
      * updating tensor creation calls
      
      * fixing the all_reduce contiguous tensor
      
      * transposed all reduce results
      
      * [syncBN]
      support fp16 input & fp32 layer for apex fp16
      partially fixing launch configs
      enabling imagenet example to run with --sync_bn
      
      * [syncBN PR]
      Documentation added
      
      * adjusting README
      
      * adjusting again
      
      * added some doc to imagenet example
      
      * [syncBN]
        warp-level reduction
        bug fix: warp reduction logic updated. check for dummy element to avoid nan.
        improved launch config for better reduction kernels. Further improvements
      would be to increase grid size.
      
      * [syncBN]
        fixing undefined behavior in __shfl_down_sync from divergent threads in warp
      reduction.
        changing at::native::empty to at::empty (upstream comments)
      81eef1ef
  4. 10 Oct, 2018 2 commits
  5. 08 Oct, 2018 2 commits
  6. 07 Oct, 2018 2 commits
  7. 05 Oct, 2018 1 commit
  8. 03 Oct, 2018 1 commit
  9. 29 Sep, 2018 4 commits
  10. 19 Sep, 2018 1 commit
    • mcarilli's avatar
      Fix param freezing (#47) · 53e1b61a
      mcarilli authored
      * Fix appears to work in Tomasz's example.
      
      * Somehow shared_param got de-enabled again?
      53e1b61a
  11. 18 Sep, 2018 1 commit
  12. 17 Sep, 2018 1 commit
    • Christian Sarofeen's avatar
      Remove some fp16 examples that don't converge (#45) · 0ec8addb
      Christian Sarofeen authored
      * Remove some fp16 examples that don't converge
      
      Default static loss scale of 1.0 (default value) for resnet50 doesn't converge. Either remove example or put static loss scale 128 on it, which is known to converge well.
      
      * Update README.md
      0ec8addb
  13. 14 Sep, 2018 2 commits
  14. 13 Sep, 2018 1 commit
  15. 11 Sep, 2018 1 commit
  16. 10 Sep, 2018 4 commits
  17. 07 Sep, 2018 1 commit
  18. 06 Sep, 2018 2 commits
  19. 05 Sep, 2018 2 commits
  20. 30 Aug, 2018 2 commits
  21. 28 Aug, 2018 3 commits