fbgemm-gpu-hstu-nightly 2025.6.13__cp313-cp313-manylinux_2_28_x86_64.whl → 2025.6.15__cp313-cp313-manylinux_2_28_x86_64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6,6 +6,6 @@
6
6
  # This source code is licensed under the BSD-style license found in the
7
7
  # LICENSE file in the root directory of this source tree.
8
8
 
9
- __version__: str = "2025.6.13"
9
+ __version__: str = "2025.6.15"
10
10
  __target__: str = "hstu"
11
11
  __variant__: str = "cuda"
@@ -33,6 +33,17 @@ class EmbeddingLocation(enum.IntEnum):
33
33
  HOST = 3
34
34
  MTIA = 4
35
35
 
36
+ @classmethod
37
+ # pyre-ignore[3]
38
+ def str_values(cls):
39
+ return [
40
+ "device",
41
+ "managed",
42
+ "managed_caching",
43
+ "host",
44
+ "mtia",
45
+ ]
46
+
36
47
  @classmethod
37
48
  # pyre-ignore[3]
38
49
  def from_str(cls, key: str):
@@ -99,9 +99,7 @@ class EmbeddingOpsCommonConfigLoader:
99
99
  click.option(
100
100
  "--emb-location",
101
101
  default="device",
102
- type=click.Choice(
103
- ["device", "managed", "managed_caching"], case_sensitive=False
104
- ),
102
+ type=click.Choice(EmbeddingLocation.str_values(), case_sensitive=False),
105
103
  help="Memory location of the embeddings",
106
104
  ),
107
105
  click.option(
@@ -2804,7 +2804,12 @@ class SSDTableBatchedEmbeddingBags(nn.Module):
2804
2804
  """
2805
2805
  Create a rocksdb hard link snapshot to provide cross procs access to the underlying data
2806
2806
  """
2807
- self.ssd_db.create_rocksdb_hard_link_snapshot(self.step)
2807
+ if self.backend_type == BackendType.SSD:
2808
+ self.ssd_db.create_rocksdb_hard_link_snapshot(self.step)
2809
+ else:
2810
+ logging.warning(
2811
+ "create_rocksdb_hard_link_snapshot is only supported for SSD backend"
2812
+ )
2808
2813
 
2809
2814
  def prepare_inputs(
2810
2815
  self,
@@ -9,7 +9,6 @@
9
9
  from __future__ import annotations
10
10
 
11
11
  import functools
12
- import logging
13
12
  from typing import List, Optional, Union
14
13
 
15
14
  import torch
@@ -26,58 +25,6 @@ def implements(torch_function):
26
25
  return decorator
27
26
 
28
27
 
29
- class KVTensorMetadata:
30
- """
31
- Class that is used to represent a KVTensor as a Serialized Metadata in python
32
- This object is used to reconstruct the KVTensor in the publish component
33
- """
34
-
35
- checkpoint_paths: List[str]
36
- tbe_uuid: str
37
- rdb_num_shards: int
38
- rdb_num_threads: int
39
- max_D: int
40
- table_offset: int
41
- table_shape: List[int]
42
- dtype: int
43
- checkpoint_uuid: str
44
-
45
- def __init__(
46
- self,
47
- checkpoint_paths: List[str],
48
- tbe_uuid: str,
49
- rdb_num_shards: int,
50
- rdb_num_threads: int,
51
- max_D: int,
52
- table_offset: int,
53
- table_shape: List[int],
54
- dtype: int,
55
- checkpoint_uuid: str,
56
- ) -> None:
57
- """
58
- Ensure caller loads the module before creating this object.
59
-
60
- ```
61
- load_torch_module(
62
- "//deeplearning/fbgemm/fbgemm_gpu:ssd_split_table_batched_embeddings"
63
- )
64
- ```
65
-
66
- Args:
67
-
68
- wrapped: torch.classes.fbgemm.KVTensorWrapper
69
- """
70
- self.checkpoint_paths = checkpoint_paths
71
- self.tbe_uuid = tbe_uuid
72
- self.rdb_num_shards = rdb_num_shards
73
- self.rdb_num_threads = rdb_num_threads
74
- self.max_D = max_D
75
- self.table_offset = table_offset
76
- self.table_shape = table_shape
77
- self.checkpoint_uuid = checkpoint_uuid
78
- self.dtype = dtype
79
-
80
-
81
28
  class PartiallyMaterializedTensor:
82
29
  """
83
30
  A tensor-like object that represents a partially materialized tensor in memory.
@@ -104,55 +51,6 @@ class PartiallyMaterializedTensor:
104
51
  self._is_virtual = is_virtual
105
52
  self._requires_grad = False
106
53
 
107
- @property
108
- def generate_kvtensor_metadata(self) -> KVTensorMetadata:
109
- serialized_metadata = self.wrapped.get_kvtensor_serializable_metadata()
110
- try:
111
- metadata_itr = 0
112
- num_rdb_ckpts = int(serialized_metadata[0])
113
- metadata_itr += 1
114
- checkpoint_paths: List[str] = []
115
- for i in range(num_rdb_ckpts):
116
- checkpoint_paths.append(serialized_metadata[i + metadata_itr])
117
- metadata_itr += num_rdb_ckpts
118
- tbe_uuid = serialized_metadata[metadata_itr]
119
- metadata_itr += 1
120
- rdb_num_shards = int(serialized_metadata[metadata_itr])
121
- metadata_itr += 1
122
- rdb_num_threads = int(serialized_metadata[metadata_itr])
123
- metadata_itr += 1
124
- max_D = int(serialized_metadata[metadata_itr])
125
- metadata_itr += 1
126
- table_offset = int(serialized_metadata[metadata_itr])
127
- metadata_itr += 1
128
- table_shape: List[int] = []
129
- table_shape.append(int(serialized_metadata[metadata_itr]))
130
- metadata_itr += 1
131
- table_shape.append(int(serialized_metadata[metadata_itr]))
132
- metadata_itr += 1
133
- dtype = int(serialized_metadata[metadata_itr])
134
- metadata_itr += 1
135
- checkpoint_uuid = serialized_metadata[metadata_itr]
136
- metadata_itr += 1
137
- res = KVTensorMetadata(
138
- checkpoint_paths,
139
- tbe_uuid,
140
- rdb_num_shards,
141
- rdb_num_threads,
142
- max_D,
143
- table_offset,
144
- table_shape,
145
- dtype,
146
- checkpoint_uuid,
147
- )
148
-
149
- return res
150
- except Exception as e:
151
- logging.error(
152
- f"Failed to parse metadata: {e}, here is metadata: {serialized_metadata}"
153
- )
154
- raise e
155
-
156
54
  @property
157
55
  def wrapped(self):
158
56
  """
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fbgemm_gpu_hstu_nightly
3
- Version: 2025.6.13
3
+ Version: 2025.6.15
4
4
  Home-page: https://github.com/pytorch/fbgemm
5
5
  Author: FBGEMM Team
6
6
  Author-email: packages@pytorch.org
@@ -15,7 +15,7 @@ fbgemm_gpu/split_embedding_inference_converter.py,sha256=ilVVowkTiY0WDpOYorj917T
15
15
  fbgemm_gpu/split_embedding_optimizer_ops.py,sha256=wXuGazClBMk62yL_r9udUIKaPgQP7SlkSb5ugB75wrQ,711
16
16
  fbgemm_gpu/split_embedding_utils.py,sha256=Gb40ZKeATxIKEKI3aVQMgDDBanNpKMc53Z43mnzdR_I,851
17
17
  fbgemm_gpu/split_table_batched_embeddings_ops.py,sha256=_MIp6uHYHLn4GxGdrGsfddfSsZ2Z9mjsYIrih3ncI1I,2339
18
- fbgemm_gpu/split_table_batched_embeddings_ops_common.py,sha256=jRCuFRUPchgqL9Z9RTEIjZGl9R6YJe1RlU_Su7AgCMw,8030
18
+ fbgemm_gpu/split_table_batched_embeddings_ops_common.py,sha256=qglNRKKuHkrKiTw90ACjZpMzcjHKXKV7ME3a8QHfQt4,8237
19
19
  fbgemm_gpu/split_table_batched_embeddings_ops_inference.py,sha256=bUDWa6IR0vGLDThgB3nmD1yfYa8_HD34B0dtLnd7thw,81692
20
20
  fbgemm_gpu/split_table_batched_embeddings_ops_training.py,sha256=YCLPSW9CXrRwMN5KEU6x0ESbutdhzKTaNOO8oN5kX7I,163875
21
21
  fbgemm_gpu/split_table_batched_embeddings_ops_training_common.py,sha256=ktC10-nakOBpcmJNCOGQsxuBCP8XTwXJ2WeEgIg91tc,5455
@@ -32,10 +32,10 @@ fbgemm_gpu/docs/merge_pooled_embedding_ops.py,sha256=oJLgSgZQmhsyGLbTmZTxNgQrk65
32
32
  fbgemm_gpu/docs/permute_pooled_embedding_ops.py,sha256=tZUqLVXlk5O6VAKKDA-OEMx2fCu5QPOOeoAPZA9_nLY,4454
33
33
  fbgemm_gpu/docs/quantize_ops.py,sha256=xTtOaVK1P02ymreE_i21YiyYDZCqhoZY9eWp_mEIRlo,1297
34
34
  fbgemm_gpu/docs/sparse_ops.py,sha256=NTcTm0q9h8W2B8PKPoic2fHsAaCbCYunSa_EYK0LtHQ,21382
35
- fbgemm_gpu/docs/version.py,sha256=9kytZ-RJTwv5Z4Lajmjf4ELvL28p4wC2CGW1Zv5ZfSg,315
35
+ fbgemm_gpu/docs/version.py,sha256=Wfdofi1dDfFLcvCYRMDlfYaAgz8J7SIMZPIBXTmCxcA,315
36
36
  fbgemm_gpu/experimental/hstu/__init__.py,sha256=KNisP6qDMwgjgxkGlqUZRNjJ_8o8R-cTmm3HxF7pSqI,1564
37
37
  fbgemm_gpu/experimental/hstu/cuda_hstu_attention.py,sha256=5425GRjJuzpXQC-TowgQOCFjZmOwv_EK0lKbURhHBTQ,9920
38
- fbgemm_gpu/experimental/hstu/fbgemm_gpu_experimental_hstu.so,sha256=2aOGFADSpOqYB1y2KqKwL0M8Xxn5McU53frUw8y7XsE,352696288
38
+ fbgemm_gpu/experimental/hstu/fbgemm_gpu_experimental_hstu.so,sha256=ICHJaRmXwXoi_gfj281yCbMnahYSMEjtn4t6rr_blaw,352696288
39
39
  fbgemm_gpu/quantize/__init__.py,sha256=pftciXHE7csekDFkl7Ui1AWglVMMnSrOO04mREnUdb0,921
40
40
  fbgemm_gpu/quantize/quantize_ops.py,sha256=25AIOv9n2UoxamMUaI6EK1Ur4gSHxbZIReHBtgOjjCs,2228
41
41
  fbgemm_gpu/sll/__init__.py,sha256=rgXh35-OFUE54E9gGBq3NGxouGvgMv2ccY2bWUTxONY,4191
@@ -61,7 +61,7 @@ fbgemm_gpu/tbe/bench/__init__.py,sha256=Uhk3IzAs9f_2kVYcMuFP3KiwwkqqYxaZFivPaBIN
61
61
  fbgemm_gpu/tbe/bench/bench_config.py,sha256=GYxVotMi-JK7AEm96sOfB2uOlmRtXpOTr-tkPEB1Q48,4241
62
62
  fbgemm_gpu/tbe/bench/bench_runs.py,sha256=hmoldOLh2UsjPAeb0zdfm5aTbs_0iEnlCxsXCHuzAMg,18343
63
63
  fbgemm_gpu/tbe/bench/eeg_cli.py,sha256=T8Wa1PeRyFZ0Ge-SErHQEYDY8LvHVoCV_qQlE_6kER0,3600
64
- fbgemm_gpu/tbe/bench/embedding_ops_common_config.py,sha256=yBk0zaZJ5b3ffPG91SoqD088shrLYdyCFGfn6DsXK9A,5021
64
+ fbgemm_gpu/tbe/bench/embedding_ops_common_config.py,sha256=mdG3JZwgclp6DiVwQSKl5jrirLSId4OuM64knj9TkEk,4973
65
65
  fbgemm_gpu/tbe/bench/eval_compression.py,sha256=bINVERk42VJDSdenQHKWApmRMrW8rhkevOgE0hDR-S8,3499
66
66
  fbgemm_gpu/tbe/bench/reporter.py,sha256=ZK5RFolUmZEcsEaife270_iOdXAQD5EjTUkuxctnAbY,804
67
67
  fbgemm_gpu/tbe/bench/tbe_data_config.py,sha256=uvepBrbzERALBB-RPZVGFra4a8ALCqsOe9X6iWpqAyU,9413
@@ -73,9 +73,9 @@ fbgemm_gpu/tbe/cache/split_embeddings_cache_ops.py,sha256=mQkCl0xN8xUu5bjEWcOOFN
73
73
  fbgemm_gpu/tbe/ssd/__init__.py,sha256=wzfMT10cp_dqK2lrebC449hOdexBnizcf_98lA1NyHs,483
74
74
  fbgemm_gpu/tbe/ssd/common.py,sha256=1J8K7sTQswgCYWaVwF-ZdCJj7mNN6O9GI70AaZWzJGE,1044
75
75
  fbgemm_gpu/tbe/ssd/inference.py,sha256=DTjwj3f6JaUMcecWoRNkZpRgXDJ-eE3grtixYwKb5DI,22829
76
- fbgemm_gpu/tbe/ssd/training.py,sha256=gCvMY8fGP2JNosMyzW7uiQUuUsDIdUULB_PG51wOpRk,131519
76
+ fbgemm_gpu/tbe/ssd/training.py,sha256=Dx-rJqjrD1A4U4MEVaP3OJl3CZz0VRSTWcukx5557Jw,131715
77
77
  fbgemm_gpu/tbe/ssd/utils/__init__.py,sha256=5DgmR2HA6NtmYh2ddkUgpDsZ6a7hF0DPedA1gMpdh18,250
78
- fbgemm_gpu/tbe/ssd/utils/partially_materialized_tensor.py,sha256=ePF2b3vCFB_ZzPaMneaXe5gODFVRJmXKbagT2uNKAAQ,10934
78
+ fbgemm_gpu/tbe/ssd/utils/partially_materialized_tensor.py,sha256=uwwEdUiaVlnWZ_rQax2z28VYROfivdMqIdWLy8IZ6cE,7646
79
79
  fbgemm_gpu/tbe/stats/__init__.py,sha256=on29iDtq7cVNh90JR9aeFNG-K9DDoYq0JryzoplL49I,322
80
80
  fbgemm_gpu/tbe/stats/bench_params_reporter.py,sha256=7XIWVObJOxSVUG73xsd_lVSuCFUQkMEGSWW--BoyCH0,7358
81
81
  fbgemm_gpu/tbe/utils/__init__.py,sha256=rlXFm-kTByFZO4SS5C5zMzANRiQmM1NT__eWBayncYg,549
@@ -93,7 +93,7 @@ fbgemm_gpu/utils/__init__.py,sha256=JQQNdcTTaEU6ptK-OW-ZQBwTFxEZZpWOtBXWwEZm39o,
93
93
  fbgemm_gpu/utils/filestore.py,sha256=Zshw1dA03m9aHMMAtETdq4bgOLocyLhzlkAUoG8VkdM,4743
94
94
  fbgemm_gpu/utils/loader.py,sha256=1hCEhNvkflniH46fGcrguLeP1z-6uyOu2QFwqKU5CIM,990
95
95
  fbgemm_gpu/utils/torch_library.py,sha256=dQcHv1qgpu5QYlJjxjd6oeHjtxnmmXzx3PL6vjCmxL4,4199
96
- fbgemm_gpu_hstu_nightly-2025.6.13.dist-info/METADATA,sha256=G6aLh_w9SYySzT7xRYMUj8OW6l873R2B71m-tgD6GWs,2794
97
- fbgemm_gpu_hstu_nightly-2025.6.13.dist-info/WHEEL,sha256=Nkv8TSWVt7XcnRf1cdq5HOzycTl6Pjzlmn7gPSv4NiQ,108
98
- fbgemm_gpu_hstu_nightly-2025.6.13.dist-info/top_level.txt,sha256=2tlbTWLkPjhqvLF_6BbqKzkcPluSE-oPRVjI8axK76I,11
99
- fbgemm_gpu_hstu_nightly-2025.6.13.dist-info/RECORD,,
96
+ fbgemm_gpu_hstu_nightly-2025.6.15.dist-info/METADATA,sha256=SxliCSqrubFUeLb4Kc97w7fTVCFw0mTOAK4PtWGAw6U,2794
97
+ fbgemm_gpu_hstu_nightly-2025.6.15.dist-info/WHEEL,sha256=Nkv8TSWVt7XcnRf1cdq5HOzycTl6Pjzlmn7gPSv4NiQ,108
98
+ fbgemm_gpu_hstu_nightly-2025.6.15.dist-info/top_level.txt,sha256=2tlbTWLkPjhqvLF_6BbqKzkcPluSE-oPRVjI8axK76I,11
99
+ fbgemm_gpu_hstu_nightly-2025.6.15.dist-info/RECORD,,