Support aten::lstm, aten::gru and aten::rnn_{relu,tanh} operations (#21579)

* [PT FE] Initial LSTM impl

* Support aten::lstm operation

* Support aten::gru and aten::rnn_{relu,tanh}

* Apply suggestions from code review

* Fix build

* Simplify implementation

* More simplification

* Update src/frontends/pytorch/src/op/lstm.cpp

* Simplification

* Use default LSTM helpers

---------

Co-authored-by: Roboreptile <piotr.krzeminski@intel.com>
This commit is contained in:
Maxim VafinandRoboreptile authored and GitHub committed 2023-12-11 19:06:51 +00:00
1 parent df029eb9c7
commit 0f6b9abee8
7 files changed
+519 -5

No files matched your search

@@ -67,7 +67,7 @@ facebook/convnextv2-tiny-22k-384,convnextv2
facebook/detr-resnet-50,detr
facebook/dinov2-base,dinov2,xfail,Tracing error: Please check correctness of provided example_input (but eval was correct)
facebook/dpr-question_encoder-single-nq-base,dpr
facebook/encodec_24khz,encodec,xfail,Unsupported op aten::lstm
facebook/encodec_24khz,encodec
facebook/esm2_t6_8M_UR50D,esm
facebook/flava-full,flava,xfail,Tracing problem
facebook/flava-image-codebook,flava_image_codebook,skip,Load problem
@@ -68,7 +68,8 @@ class TestTimmConvertModel(TestTorchConvertModel):
@pytest.mark.parametrize("name", ["mobilevitv2_050.cvnets_in1k",
"poolformerv2_s12.sail_in1k",
"vit_base_patch8_224.augreg_in21k",
"beit_base_patch16_224.in22k_ft_in22k"])
"beit_base_patch16_224.in22k_ft_in22k",
"sequencer2d_l.in1k"])
@pytest.mark.precommit
def test_convert_model_precommit(self, name, ie_device):
self.run(name, None, ie_device)
@@ -385,7 +385,7 @@ selecsls60.in1k,None
selecsls60b.in1k,None
semnasnet_075.rmsp_in1k,None
senet154.gluon_in1k,None
sequencer2d_l.in1k,None,xfail,Unsupported aten::lstm
sequencer2d_l.in1k,None
seresnet152d.ra2_in1k,None
seresnet33ts.ra2_in1k,None
seresnet50.a1_in1k,None
@@ -10,7 +10,7 @@ basic_gnn_gin,None,xfail,Unsupported op aten::scatter_add_
basic_gnn_sage,None,xfail,Unsupported op aten::scatter_add_
#cm3leon_generate,None,skip,No install.py is found
dcgan,None
demucs,None,xfail,Unsupported op aten::lstm
demucs,None
#densenet121,None - Already tested by torchvision tests
#detectron2_fasterrcnn_r_101_c4,None - Already tested by det2 tests
#detectron2_fasterrcnn_r_101_dc5,None - Already tested by det2 tests
@@ -93,7 +93,7 @@ tacotron2,None,skip,Can't be loaded without CUDA
#timm_vision_transformer_large,None - Already tested by timm tests
#timm_vovnet,None - Already tested by timm tests
torch_multimodal_clip,None,skip,Can't be traced
tts_angular,None,xfail,Unsupported op aten::lstm
tts_angular,None
#vgg16,None - Already tested by torchvision tests
#vision_maskrcnn,None,skip,Only tensors, lists, tuples of tensors, or dictionary of tensors can be output from traced functions
yolov3,None