Att gå djupare och bredare i neurala arkitekturer förbättrar deras noggrannhet, medan den begränsade GPU DRAM placerar en oönskad begränsning på nätverkets designdomän. Deep Learning (DL) utövare behöver antingen byta till mindre önskade nätverk arkitekturer, eller nontrivially dissekera ett nätverk över multiGPUs. Dessa distraherar DL-utövare från att koncentrera sig på sina ursprungliga maskininlärningsuppgifter. Vi presenterar SuperNeurons: en dynamisk GPU minne schemaläggning körtid för att möjliggöra nätverksträning långt bortom GPU DRAM kapacitet. SuperNeurons har 3 minnesoptimeringar, Liveness Analysis, Unified Tensor Pool och Cost-Aware Recomputation; tillsammans minskar de effektivt den nätverkstäckande maximal minnesanvändning ner till maximal minnesanvändning bland lager. Vi tar också upp prestandaproblemen i dessa minnesbesparande tekniker. Med tanke på den begränsade GPU-DRAM, ger SuperNeurons inte bara det nödvändiga minnet för träningen, men också dynamiskt fördela minnet för convolution arbetsutrymmen för att uppnå den höga prestandan. Utvärderingar mot Caffe, Torch, MXNet och TensorFlow har visat att SuperNeurons tränar minst 3.2432 djupare nätverk än de nuvarande med den ledande prestandan. Särskilt, SuperNeurons kan träna ResNet2500 som har 10 4 grundläggande nätverkslager på en 12 GB K40c.
Ett liknande arbete, SuperNeurons REF, fördelar dynamiskt minnet för convolution arbetsytor för att uppnå den höga prestandan.
Superneurons: dynamic GPU memory management for training deep neural networks
{'venue': "PPoPP '18", 'journal': None, 'mag_field_of_study': ['Computer Science']}