diff --git a/hpvm/projects/torch2hpvm/torch2hpvm/graph_ir.py b/hpvm/projects/torch2hpvm/torch2hpvm/graph_ir.py
index 5c248f829adef15093b853891927f353aca30c4b..abf7b60ff3ff30962d8c960e5c6ffbc33d03f39e 100644
--- a/hpvm/projects/torch2hpvm/torch2hpvm/graph_ir.py
+++ b/hpvm/projects/torch2hpvm/torch2hpvm/graph_ir.py
@@ -115,7 +115,6 @@ class WeightTensor(TensorNode):
 
 class Conv2DNode(DFGNode):
     op_type = "Conv2D"
-    hpvm_op_type = "convolution"
 
     def __init__(
         self,
@@ -135,6 +134,11 @@ class Conv2DNode(DFGNode):
         if list(dilations) != [1, 1]:
             raise ValueError("Dilation > 1 is unsupported")
         self.group = group
+        if group == 1:
+            self.hpvm_op_type = "convolution"
+        else:
+            # HPVM tensor_runtime distinguishes these two. (sigh)
+            self.hpvm_op_type = "depthwise_convolution"
         self.pads = pads[0]
         self.sh, self.sw = strides