[QST] int8 Conv2D for volta V100
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 10.5k
- Forks
- 2.1k
- Avg merge
- 3d 11h
- Merged PRs (30d)
- 7
Description
What is your question?
Hey I use following script to emit the cuda kernel for the Nvidia V100:
import torch
import random
import cutlass
dtype = torch.int32
type_A = torch.int8
type_B = torch.int8
type_C = torch.int32
type_D = torch.int32
plan = cutlass.Conv2dFprop(element=dtype, element_input=type_A, element_weight=type_B, element_C=type_C ,element_output=type_D, element_accumulator=type_D)
op = plan.construct()
conv_layer = cutlass.emit.pytorch(op, name='conv_layer', cc=plan.cc, sourcedir='conv', jit=True)
I tried a couple of configuration datatypes. Float works just fine. But I want them to be integer-8 Input and weights. And it should be possible with idp4a instruction set, right ?
Any ideas ? - thanks in advance !
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the supplied Python script, focusing on the cutlass.Conv2dFprop configuration and cutlass.emit.pytorch entry point for int8 inputs and weights. Determine whether this configuration is supported for the V100 and document a confirmed working configuration or the missing support; the issue currently provides no failing output or target file.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, python, pytorch
- Domain
- machine-learning, performance
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100