@@ -1748,8 +1748,6 @@ def check_arg(arg: Node, n: Optional[Node] = None) -> None:
1748
1748
1749
1749
# Check targets are legit
1750
1750
if self .owning_module :
1751
- num_warnings = 0
1752
- MAX_WARNINGS = 5
1753
1751
for node in self .nodes :
1754
1752
if node .op == "call_function" :
1755
1753
if not callable (node .target ):
@@ -1781,29 +1779,8 @@ def check_arg(arg: Node, n: Optional[Node] = None) -> None:
1781
1779
f"Node { node } target { node .target } { atom } of { seen_qualname } does "
1782
1780
"not reference an nn.Module"
1783
1781
)
1784
- elif (
1785
- node .op == "get_attr"
1786
- and not isinstance (new_m_itr , torch .nn .Module )
1787
- and not isinstance (new_m_itr , torch .nn .Parameter )
1788
- and atom not in m_itr ._buffers
1789
- ):
1790
- if num_warnings < MAX_WARNINGS :
1791
- # Don't emit this warning too frequently,
1792
- # for very large graphs this can become very expensive
1793
- # from a performance perspective.
1794
- warnings .warn (
1795
- f"Node { node } target { node .target } { atom } of { seen_qualname } does "
1796
- "not reference an nn.Module, nn.Parameter, or buffer, which is "
1797
- "what 'get_attr' Nodes typically target"
1798
- )
1799
- num_warnings += 1
1800
- else :
1801
- m_itr = new_m_itr
1802
- if num_warnings > MAX_WARNINGS :
1803
- warnings .warn (
1804
- f"Additional { num_warnings - MAX_WARNINGS } warnings "
1805
- "suppressed about get_attr references"
1806
- )
1782
+
1783
+ m_itr = new_m_itr
1807
1784
1808
1785
@compatibility (is_backward_compatible = True )
1809
1786
def eliminate_dead_code (
0 commit comments