Skip to content

Commit aebf871

Browse files
committed
[libdevice](fix) Remove duplicated deprecated func and update libdevice binary file
1 parent 6874b9b commit aebf871

6 files changed

Lines changed: 44 additions & 55 deletions

File tree

7.82 KB
Binary file not shown.

third_party/ascend/language/cann/extension/_utils.py

Lines changed: 0 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,6 @@
1-
import inspect
2-
from functools import wraps
3-
from warnings import warn
4-
51
import triton.language.core as tl
62
from triton._C.libtriton import ir
73

8-
_DEPRECATED_MESSAGE_ATTR = "_deprecated_message"
9-
10-
11-
def _deprecated(fn_name=None, replacement=None):
12-
13-
def decorator(fn):
14-
name = fn_name or f"triton.language.extra.cann.extension.{fn.__name__}"
15-
message = (f"{name} is deprecated and will be removed in the next release"
16-
f"{f'; use {replacement} instead.' if replacement else '.'}")
17-
18-
if inspect.isclass(fn):
19-
setattr(fn, _DEPRECATED_MESSAGE_ATTR, message)
20-
fn.__doc__ = f"{fn.__doc__ or ''}\n\n.. warning::\n {message}"
21-
return fn
22-
23-
@wraps(fn)
24-
def wrapper(*args, **kwargs):
25-
warn(message, FutureWarning, stacklevel=2)
26-
return fn(*args, **kwargs)
27-
28-
wrapper.__doc__ = f"{fn.__doc__ or ''}\n\n.. warning::\n {message}"
29-
return wrapper
30-
31-
return decorator
32-
334

345
def custom_op(builder: ir.builder, op_name: str, **kwargs):
356
if op_name == "sync_block_all":

third_party/ascend/language/cann/extension/builtin_custom_ops.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,8 @@
2323
import triton.language.core as tl
2424
from .custom_op import register_custom_op
2525
from .core import CORE, PIPE, MODE
26-
from ._utils import _is_int_like_elem, _assert_int_like_tuple, _deprecated
26+
from ..utils import _deprecated
27+
from ._utils import _is_int_like_elem, _assert_int_like_tuple
2728

2829

2930
@_deprecated(fn_name="triton.language.extra.cann.extension.custom('__builtin_index_select', ...)")

third_party/ascend/language/cann/extension/mem_ops.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@
1515
from typing import Optional, Tuple, List, overload, Union
1616
from triton._C.libtriton import ir
1717

18-
from ._utils import _convert_elem_to_ir_value, _deprecated
18+
from ..utils import _deprecated
19+
from ._utils import _convert_elem_to_ir_value
1920

2021

2122
@_deprecated()

third_party/ascend/language/cann/libdevice.py

Lines changed: 12 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,14 @@
1818
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
1919
# THE SOFTWARE.
2020

21-
from functools import wraps
2221
from math import pi as math_pi
23-
from warnings import warn
2422
from triton.language import core, math, semantic, standard
2523
from triton._C.libtriton import ir
2624
from triton.runtime.jit import jit
2725
from triton.backends.ascend.utils import is_compile_on_910_95, triton_enable_libdevice_simt
2826

27+
from .utils import _deprecated
28+
2929

3030
def _is_libdevice_simt_enabled(_semantic) -> bool:
3131
return triton_enable_libdevice_simt(_semantic.builder.options.arch)
@@ -35,23 +35,6 @@ def _is_a5_target(_semantic) -> bool:
3535
return is_compile_on_910_95(_semantic.builder.options.arch)
3636

3737

38-
def _deprecated(replacement):
39-
40-
def decorator(fn):
41-
message = (f"cann.libdevice.{fn.__name__} is deprecated and will be removed in the next release; "
42-
f"use cann.libdevice.{replacement} instead.")
43-
44-
@wraps(fn)
45-
def wrapper(*args, **kwargs):
46-
warn(message, FutureWarning, stacklevel=2)
47-
return fn(*args, **kwargs)
48-
49-
wrapper.__doc__ = f"{fn.__doc__ or ''}\n\n.. warning::\n {message}"
50-
return wrapper
51-
52-
return decorator
53-
54-
5538
class _FlipStaticRange:
5639

5740
def __init__(self, arg1, arg2=None, step=None):
@@ -2913,30 +2896,35 @@ def sqrt(arg0, _semantic=None):
29132896

29142897

29152898
@core.extern
2916-
@_deprecated("hadd")
2899+
@_deprecated(fn_name="triton.language.extra.cann.libdevice.uhadd",
2900+
replacement="triton.language.extra.cann.libdevice.hadd")
29172901
def uhadd(arg0, arg1, _semantic=None):
29182902
return hadd(arg0, arg1, _semantic=_semantic)
29192903

29202904

29212905
@core.extern
2922-
@_deprecated("mul24")
2906+
@_deprecated(fn_name="triton.language.extra.cann.libdevice.umul24",
2907+
replacement="triton.language.extra.cann.libdevice.mul24")
29232908
def umul24(arg0, arg1, _semantic=None):
29242909
return mul24(arg0, arg1, _semantic=_semantic)
29252910

29262911

29272912
@core.extern
2928-
@_deprecated("mulhi")
2913+
@_deprecated(fn_name="triton.language.extra.cann.libdevice.umulhi",
2914+
replacement="triton.language.extra.cann.libdevice.mulhi")
29292915
def umulhi(arg0, arg1, _semantic=None):
29302916
return mulhi(arg0, arg1, _semantic=_semantic)
29312917

29322918

29332919
@core.extern
2934-
@_deprecated("rhadd")
2920+
@_deprecated(fn_name="triton.language.extra.cann.libdevice.urhadd",
2921+
replacement="triton.language.extra.cann.libdevice.rhadd")
29352922
def urhadd(arg0, arg1, _semantic=None):
29362923
return rhadd(arg0, arg1, _semantic=_semantic)
29372924

29382925

29392926
@core.extern
2940-
@_deprecated("sad")
2927+
@_deprecated(fn_name="triton.language.extra.cann.libdevice.usad",
2928+
replacement="triton.language.extra.cann.libdevice.sad")
29412929
def usad(arg0, arg1, arg2, _semantic=None):
29422930
return sad(arg0, arg1, arg2, _semantic=_semantic)
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
import inspect
2+
from functools import wraps
3+
from warnings import warn
4+
5+
_DEPRECATED_MESSAGE_ATTR = "_deprecated_message"
6+
7+
8+
def _deprecated(fn_name=None, replacement=None):
9+
10+
def decorator(fn):
11+
name = fn_name or f"triton.language.extra.cann.extension.{fn.__name__}"
12+
message = (f"{name} is deprecated and will be removed in the next release"
13+
f"{f'; use {replacement} instead.' if replacement else '.'}")
14+
15+
if inspect.isclass(fn):
16+
setattr(fn, _DEPRECATED_MESSAGE_ATTR, message)
17+
fn.__doc__ = f"{fn.__doc__ or ''}\n\n.. warning::\n {message}"
18+
return fn
19+
20+
@wraps(fn)
21+
def wrapper(*args, **kwargs):
22+
warn(message, FutureWarning, stacklevel=2)
23+
return fn(*args, **kwargs)
24+
25+
wrapper.__doc__ = f"{fn.__doc__ or ''}\n\n.. warning::\n {message}"
26+
return wrapper
27+
28+
return decorator

0 commit comments

Comments
 (0)