@@ -1726,8 +1726,6 @@ def check_arg(arg: Node, n: Optional[Node] = None) -> None:
1726
1726
1727
1727
# Check targets are legit
1728
1728
if self .owning_module :
1729
- num_warnings = 0
1730
- MAX_WARNINGS = 5
1731
1729
for node in self .nodes :
1732
1730
if node .op == "call_function" :
1733
1731
if not callable (node .target ):
@@ -1759,29 +1757,8 @@ def check_arg(arg: Node, n: Optional[Node] = None) -> None:
1759
1757
f"Node { node } target { node .target } { atom } of { seen_qualname } does "
1760
1758
"not reference an nn.Module"
1761
1759
)
1762
- elif (
1763
- node .op == "get_attr"
1764
- and not isinstance (new_m_itr , torch .nn .Module )
1765
- and not isinstance (new_m_itr , torch .nn .Parameter )
1766
- and atom not in m_itr ._buffers
1767
- ):
1768
- if num_warnings < MAX_WARNINGS :
1769
- # Don't emit this warning too frequently,
1770
- # for very large graphs this can become very expensive
1771
- # from a performance perspective.
1772
- warnings .warn (
1773
- f"Node { node } target { node .target } { atom } of { seen_qualname } does "
1774
- "not reference an nn.Module, nn.Parameter, or buffer, which is "
1775
- "what 'get_attr' Nodes typically target"
1776
- )
1777
- num_warnings += 1
1778
- else :
1779
- m_itr = new_m_itr
1780
- if num_warnings > MAX_WARNINGS :
1781
- warnings .warn (
1782
- f"Additional { num_warnings - MAX_WARNINGS } warnings "
1783
- "suppressed about get_attr references"
1784
- )
1760
+
1761
+ m_itr = new_m_itr
1785
1762
1786
1763
@compatibility (is_backward_compatible = True )
1787
1764
def eliminate_dead_code (
0 commit comments