ttnn-visualizer 0.26.0__py3-none-any.whl → 0.27.1__py3-none-any.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.
- ttnn_visualizer/app.py +32 -5
- ttnn_visualizer/csv_queries.py +20 -4
- ttnn_visualizer/decorators.py +6 -6
- ttnn_visualizer/exceptions.py +7 -0
- ttnn_visualizer/models.py +11 -11
- ttnn_visualizer/queries.py +5 -5
- ttnn_visualizer/sessions.py +74 -36
- ttnn_visualizer/sockets.py +17 -17
- ttnn_visualizer/static/assets/{allPaths-egCeGMYd.js → allPaths-C0lxNW4g.js} +1 -1
- ttnn_visualizer/static/assets/{allPathsLoader-ChZ_kotC.js → allPathsLoader-DNFRLKF6.js} +2 -2
- ttnn_visualizer/static/assets/{index-S-_ELv4m.css → index-BTfoVg9a.css} +2 -2
- ttnn_visualizer/static/assets/{index-rIoXC5rS.js → index-BVO5CCjN.js} +193 -193
- ttnn_visualizer/static/assets/{splitPathsBySizeLoader-BfocwQsJ.js → splitPathsBySizeLoader-BOgPj0vG.js} +1 -1
- ttnn_visualizer/static/index.html +2 -2
- ttnn_visualizer/views.py +34 -34
- {ttnn_visualizer-0.26.0.dist-info → ttnn_visualizer-0.27.1.dist-info}/METADATA +1 -1
- {ttnn_visualizer-0.26.0.dist-info → ttnn_visualizer-0.27.1.dist-info}/RECORD +22 -22
- {ttnn_visualizer-0.26.0.dist-info → ttnn_visualizer-0.27.1.dist-info}/LICENSE +0 -0
- {ttnn_visualizer-0.26.0.dist-info → ttnn_visualizer-0.27.1.dist-info}/LICENSE_understanding.txt +0 -0
- {ttnn_visualizer-0.26.0.dist-info → ttnn_visualizer-0.27.1.dist-info}/WHEEL +0 -0
- {ttnn_visualizer-0.26.0.dist-info → ttnn_visualizer-0.27.1.dist-info}/entry_points.txt +0 -0
- {ttnn_visualizer-0.26.0.dist-info → ttnn_visualizer-0.27.1.dist-info}/top_level.txt +0 -0
@@ -1 +1 @@
|
|
1
|
-
import{_ as o,a as _,b as i,p as c,I as u}from"./index-
|
1
|
+
import{_ as o,a as _,b as i,p as c,I as u}from"./index-BVO5CCjN.js";var p=function(n,s){return o(void 0,void 0,void 0,function(){var a,r;return _(this,function(e){switch(e.label){case 0:return a=c(n),s!==u.STANDARD?[3,2]:[4,i(()=>import("./index-BVMreIQm.js").then(t=>t.I),[])];case 1:return r=e.sent(),[3,4];case 2:return[4,i(()=>import("./index-Do7YB6C4.js").then(t=>t.I),[])];case 3:r=e.sent(),e.label=4;case 4:return[2,r[a]]}})})};export{p as splitPathsBySizeLoader};
|
@@ -27,8 +27,8 @@
|
|
27
27
|
name="theme-color"
|
28
28
|
content="#33333d"
|
29
29
|
/>
|
30
|
-
<script type="module" crossorigin src="/assets/index-
|
31
|
-
<link rel="stylesheet" crossorigin href="/assets/index-
|
30
|
+
<script type="module" crossorigin src="/assets/index-BVO5CCjN.js"></script>
|
31
|
+
<link rel="stylesheet" crossorigin href="/assets/index-BTfoVg9a.css">
|
32
32
|
</head>
|
33
33
|
<body>
|
34
34
|
<div id="root"></div>
|
ttnn_visualizer/views.py
CHANGED
@@ -29,7 +29,7 @@ from ttnn_visualizer.models import (
|
|
29
29
|
RemoteReportFolder,
|
30
30
|
RemoteConnection,
|
31
31
|
StatusMessage,
|
32
|
-
|
32
|
+
Instance,
|
33
33
|
)
|
34
34
|
from ttnn_visualizer.queries import DatabaseQueries
|
35
35
|
from ttnn_visualizer.remote_sqlite_setup import get_sqlite_path, check_sqlite_path
|
@@ -43,7 +43,7 @@ from ttnn_visualizer.serializers import (
|
|
43
43
|
serialize_devices,
|
44
44
|
)
|
45
45
|
from ttnn_visualizer.sessions import (
|
46
|
-
|
46
|
+
update_instance,
|
47
47
|
)
|
48
48
|
from ttnn_visualizer.sftp_operations import (
|
49
49
|
sync_remote_folders,
|
@@ -176,7 +176,7 @@ def operation_detail(operation_id, session):
|
|
176
176
|
)
|
177
177
|
@with_session
|
178
178
|
@timer
|
179
|
-
def operation_history(session:
|
179
|
+
def operation_history(session: Instance):
|
180
180
|
operation_history_filename = "operation_history.json"
|
181
181
|
if session.remote_connection and session.remote_connection.useRemoteQuerying:
|
182
182
|
if not session.remote_folder:
|
@@ -203,7 +203,7 @@ def operation_history(session: TabSession):
|
|
203
203
|
@api.route("/config")
|
204
204
|
@with_session
|
205
205
|
@timer
|
206
|
-
def get_config(session:
|
206
|
+
def get_config(session: Instance):
|
207
207
|
if session.remote_connection and session.remote_connection.useRemoteQuerying:
|
208
208
|
if not session.remote_folder:
|
209
209
|
return {}
|
@@ -225,7 +225,7 @@ def get_config(session: TabSession):
|
|
225
225
|
@api.route("/tensors", methods=["GET"])
|
226
226
|
@with_session
|
227
227
|
@timer
|
228
|
-
def tensors_list(session:
|
228
|
+
def tensors_list(session: Instance):
|
229
229
|
with DatabaseQueries(session) as db:
|
230
230
|
device_id = request.args.get("device_id", None)
|
231
231
|
tensors = list(db.query_tensors(filters={"device_id": device_id}))
|
@@ -240,7 +240,7 @@ def tensors_list(session: TabSession):
|
|
240
240
|
@api.route("/buffer", methods=["GET"])
|
241
241
|
@with_session
|
242
242
|
@timer
|
243
|
-
def buffer_detail(session:
|
243
|
+
def buffer_detail(session: Instance):
|
244
244
|
address = request.args.get("address")
|
245
245
|
operation_id = request.args.get("operation_id")
|
246
246
|
|
@@ -262,7 +262,7 @@ def buffer_detail(session: TabSession):
|
|
262
262
|
@api.route("/buffer-pages", methods=["GET"])
|
263
263
|
@with_session
|
264
264
|
@timer
|
265
|
-
def buffer_pages(session:
|
265
|
+
def buffer_pages(session: Instance):
|
266
266
|
address = request.args.get("address")
|
267
267
|
operation_id = request.args.get("operation_id")
|
268
268
|
buffer_type = request.args.get("buffer_type", "")
|
@@ -297,7 +297,7 @@ def buffer_pages(session: TabSession):
|
|
297
297
|
@api.route("/tensors/<tensor_id>", methods=["GET"])
|
298
298
|
@with_session
|
299
299
|
@timer
|
300
|
-
def tensor_detail(tensor_id, session:
|
300
|
+
def tensor_detail(tensor_id, session: Instance):
|
301
301
|
with DatabaseQueries(session) as db:
|
302
302
|
tensors = list(db.query_tensors(filters={"tensor_id": tensor_id}))
|
303
303
|
if not tensors:
|
@@ -308,7 +308,7 @@ def tensor_detail(tensor_id, session: TabSession):
|
|
308
308
|
|
309
309
|
@api.route("/operation-buffers", methods=["GET"])
|
310
310
|
@with_session
|
311
|
-
def get_operations_buffers(session:
|
311
|
+
def get_operations_buffers(session: Instance):
|
312
312
|
buffer_type = request.args.get("buffer_type", "")
|
313
313
|
device_id = request.args.get("device_id", None)
|
314
314
|
if buffer_type and str.isdigit(buffer_type):
|
@@ -328,7 +328,7 @@ def get_operations_buffers(session: TabSession):
|
|
328
328
|
|
329
329
|
@api.route("/operation-buffers/<operation_id>", methods=["GET"])
|
330
330
|
@with_session
|
331
|
-
def get_operation_buffers(operation_id, session:
|
331
|
+
def get_operation_buffers(operation_id, session: Instance):
|
332
332
|
buffer_type = request.args.get("buffer_type", "")
|
333
333
|
device_id = request.args.get("device_id", None)
|
334
334
|
if buffer_type and str.isdigit(buffer_type):
|
@@ -357,7 +357,7 @@ def get_operation_buffers(operation_id, session: TabSession):
|
|
357
357
|
|
358
358
|
@api.route("/profiler/device-log", methods=["GET"])
|
359
359
|
@with_session
|
360
|
-
def get_profiler_data(session:
|
360
|
+
def get_profiler_data(session: Instance):
|
361
361
|
if not session.profiler_path:
|
362
362
|
return Response(status=HTTPStatus.NOT_FOUND)
|
363
363
|
with DeviceLogProfilerQueries(session) as csv:
|
@@ -367,7 +367,7 @@ def get_profiler_data(session: TabSession):
|
|
367
367
|
|
368
368
|
@api.route("/profiler/perf-results", methods=["GET"])
|
369
369
|
@with_session
|
370
|
-
def get_profiler_performance_data(session:
|
370
|
+
def get_profiler_performance_data(session: Instance):
|
371
371
|
if not session.profiler_path:
|
372
372
|
return Response(status=HTTPStatus.NOT_FOUND)
|
373
373
|
with OpsPerformanceQueries(session) as csv:
|
@@ -378,7 +378,7 @@ def get_profiler_performance_data(session: TabSession):
|
|
378
378
|
|
379
379
|
@api.route("/profiler/perf-results/raw", methods=["GET"])
|
380
380
|
@with_session
|
381
|
-
def get_profiler_perf_results_data_raw(session:
|
381
|
+
def get_profiler_perf_results_data_raw(session: Instance):
|
382
382
|
if not session.profiler_path:
|
383
383
|
return Response(status=HTTPStatus.NOT_FOUND)
|
384
384
|
content = OpsPerformanceQueries.get_raw_csv(session)
|
@@ -391,7 +391,7 @@ def get_profiler_perf_results_data_raw(session: TabSession):
|
|
391
391
|
|
392
392
|
@api.route("/profiler/perf-results/report", methods=["GET"])
|
393
393
|
@with_session
|
394
|
-
def get_profiler_perf_results_report(session:
|
394
|
+
def get_profiler_perf_results_report(session: Instance):
|
395
395
|
if not session.profiler_path:
|
396
396
|
return Response(status=HTTPStatus.NOT_FOUND)
|
397
397
|
|
@@ -405,7 +405,7 @@ def get_profiler_perf_results_report(session: TabSession):
|
|
405
405
|
|
406
406
|
@api.route("/profiler/device-log/raw", methods=["GET"])
|
407
407
|
@with_session
|
408
|
-
def get_profiler_data_raw(session:
|
408
|
+
def get_profiler_data_raw(session: Instance):
|
409
409
|
if not session.profiler_path:
|
410
410
|
return Response(status=HTTPStatus.NOT_FOUND)
|
411
411
|
content = DeviceLogProfilerQueries.get_raw_csv(session)
|
@@ -418,7 +418,7 @@ def get_profiler_data_raw(session: TabSession):
|
|
418
418
|
|
419
419
|
@api.route("/profiler/device-log/zone/<zone>", methods=["GET"])
|
420
420
|
@with_session
|
421
|
-
def get_zone_statistics(zone, session:
|
421
|
+
def get_zone_statistics(zone, session: Instance):
|
422
422
|
if not session.profiler_path:
|
423
423
|
return Response(status=HTTPStatus.NOT_FOUND)
|
424
424
|
with DeviceLogProfilerQueries(session) as csv:
|
@@ -428,7 +428,7 @@ def get_zone_statistics(zone, session: TabSession):
|
|
428
428
|
|
429
429
|
@api.route("/devices", methods=["GET"])
|
430
430
|
@with_session
|
431
|
-
def get_devices(session:
|
431
|
+
def get_devices(session: Instance):
|
432
432
|
with DatabaseQueries(session) as db:
|
433
433
|
devices = list(db.query_devices())
|
434
434
|
return serialize_devices(devices)
|
@@ -450,8 +450,8 @@ def create_report_files():
|
|
450
450
|
|
451
451
|
save_uploaded_files(files, report_directory, report_name)
|
452
452
|
|
453
|
-
|
454
|
-
|
453
|
+
instance_id = request.args.get("instanceId")
|
454
|
+
update_instance(instance_id=instance_id, report_name=report_name, clear_remote=True)
|
455
455
|
|
456
456
|
return StatusMessage(
|
457
457
|
status=ConnectionTestStates.OK, message="Success."
|
@@ -461,7 +461,7 @@ def create_report_files():
|
|
461
461
|
def create_profile_files():
|
462
462
|
files = request.files.getlist("files")
|
463
463
|
report_directory = Path(current_app.config["LOCAL_DATA_DIRECTORY"])
|
464
|
-
|
464
|
+
instance_id = request.args.get("instanceId")
|
465
465
|
|
466
466
|
if not validate_files(
|
467
467
|
files,
|
@@ -498,8 +498,8 @@ def create_profile_files():
|
|
498
498
|
str(report_directory),
|
499
499
|
)
|
500
500
|
|
501
|
-
|
502
|
-
|
501
|
+
update_instance(
|
502
|
+
instance_id=instance_id, profile_name=profiler_folder_name, clear_remote=True
|
503
503
|
)
|
504
504
|
|
505
505
|
return StatusMessage(
|
@@ -525,8 +525,8 @@ def create_npe_files():
|
|
525
525
|
|
526
526
|
save_uploaded_files(files, target_directory, npe_name)
|
527
527
|
|
528
|
-
|
529
|
-
|
528
|
+
instance_id = request.args.get("instanceId")
|
529
|
+
update_instance(instance_id=instance_id, npe_name=npe_name, clear_remote=True)
|
530
530
|
|
531
531
|
return StatusMessage(
|
532
532
|
status=ConnectionTestStates.OK, message="Success"
|
@@ -595,7 +595,7 @@ import yaml
|
|
595
595
|
|
596
596
|
@api.route("/cluster_desc", methods=["GET"])
|
597
597
|
@with_session
|
598
|
-
def get_cluster_description_file(session:
|
598
|
+
def get_cluster_description_file(session: Instance):
|
599
599
|
if not session.remote_connection:
|
600
600
|
return jsonify({"error": "Remote connection not found"}), 404
|
601
601
|
|
@@ -695,7 +695,7 @@ def sync_remote_folder():
|
|
695
695
|
|
696
696
|
folder = request_body.get("folder")
|
697
697
|
profile = request_body.get("profile", None)
|
698
|
-
|
698
|
+
instance_id = request.args.get("instanceId", None)
|
699
699
|
connection = RemoteConnection.model_validate(
|
700
700
|
request_body.get("connection"), strict=False
|
701
701
|
)
|
@@ -708,7 +708,7 @@ def sync_remote_folder():
|
|
708
708
|
remote_dir,
|
709
709
|
profile=profile_folder,
|
710
710
|
exclude_patterns=[r"/tensors(/|$)"],
|
711
|
-
sid=
|
711
|
+
sid=instance_id,
|
712
712
|
)
|
713
713
|
|
714
714
|
profile_folder.lastSynced = int(time.time())
|
@@ -726,7 +726,7 @@ def sync_remote_folder():
|
|
726
726
|
remote_folder.remotePath,
|
727
727
|
remote_dir,
|
728
728
|
exclude_patterns=[r"/tensors(/|$)"],
|
729
|
-
sid=
|
729
|
+
sid=instance_id,
|
730
730
|
)
|
731
731
|
|
732
732
|
remote_folder.lastSynced = int(time.time())
|
@@ -792,11 +792,11 @@ def use_remote_folder():
|
|
792
792
|
|
793
793
|
remote_path = f"{Path(report_data_directory).name}/{connection.host}/{connection_directory.name}"
|
794
794
|
|
795
|
-
|
796
|
-
current_app.logger.info(f"Setting active report for {
|
795
|
+
instance_id = request.args.get("instanceId")
|
796
|
+
current_app.logger.info(f"Setting active report for {instance_id} - {remote_path}")
|
797
797
|
|
798
|
-
|
799
|
-
|
798
|
+
update_instance(
|
799
|
+
instance_id=instance_id,
|
800
800
|
report_name=report_folder,
|
801
801
|
profile_name=profile_name,
|
802
802
|
remote_connection=connection,
|
@@ -814,14 +814,14 @@ def health_check():
|
|
814
814
|
|
815
815
|
@api.route("/session", methods=["GET"])
|
816
816
|
@with_session
|
817
|
-
def
|
817
|
+
def get_instance(session: Instance):
|
818
818
|
# Used to gate UI functions if no report is active
|
819
819
|
return session.model_dump()
|
820
820
|
|
821
821
|
@api.route("/npe", methods=["GET"])
|
822
822
|
@with_session
|
823
823
|
@timer
|
824
|
-
def get_npe_data(session:
|
824
|
+
def get_npe_data(session: Instance):
|
825
825
|
if not session.npe_path:
|
826
826
|
logger.error("NPE path is not set in the session.")
|
827
827
|
return Response(status=HTTPStatus.NOT_FOUND)
|
@@ -1,34 +1,34 @@
|
|
1
1
|
ttnn_visualizer/__init__.py,sha256=qn9AwfHTxYYK0Icz-q2Q41Xo9ET6oc6anZzgh02PhK4,94
|
2
|
-
ttnn_visualizer/app.py,sha256=
|
3
|
-
ttnn_visualizer/csv_queries.py,sha256=
|
4
|
-
ttnn_visualizer/decorators.py,sha256=
|
2
|
+
ttnn_visualizer/app.py,sha256=vTcZ6DfTVXpTQCwHTlrQuIK1_WHhDpKGBSv69ZeVosY,6279
|
3
|
+
ttnn_visualizer/csv_queries.py,sha256=AqyyxTU4ZvbNiZNBWepsBWa8709z2H-J1DFEGaM7ywE,21451
|
4
|
+
ttnn_visualizer/decorators.py,sha256=zfvDqeUkzeFJq0RApByl1utdv2EAh-ij4YBqheBknsU,4252
|
5
5
|
ttnn_visualizer/enums.py,sha256=XTWZGvPFtKmIhPXGCbbzi6bxFgRpLrAZGrrR5YvGYjY,203
|
6
|
-
ttnn_visualizer/exceptions.py,sha256=
|
6
|
+
ttnn_visualizer/exceptions.py,sha256=tl3WvS_6mVCFixN_elFUeypV51trVuKVcM36D2svEbE,1055
|
7
7
|
ttnn_visualizer/extensions.py,sha256=jovwo_j9toJVuXDVq4iPpXJMRXPpzSliNpE1TOJMDHI,380
|
8
8
|
ttnn_visualizer/file_uploads.py,sha256=s7gKQVpc2j1qFKY_AOYr9yoISjjUer5FjvsZyQZ_1P0,2603
|
9
|
-
ttnn_visualizer/models.py,sha256=
|
10
|
-
ttnn_visualizer/queries.py,sha256=
|
9
|
+
ttnn_visualizer/models.py,sha256=fsokoPLzjTLlaaG0gi5xzRWBhuCmvUOgeQFMpc1ocPc,7585
|
10
|
+
ttnn_visualizer/queries.py,sha256=oifyj_ROmQwUkQCFO1SteuphaoZbROcnizG1ix-1r3U,13616
|
11
11
|
ttnn_visualizer/remote_sqlite_setup.py,sha256=Zd7U7q_N92rD0P2qb1GIXuZjhV4LXqfq7Bhg0MTLS5k,3269
|
12
12
|
ttnn_visualizer/requirements.txt,sha256=LiycuPs-Oh8PZ1qM6v1KlUPQG86nQyQFz_x7dU8DSpA,370
|
13
13
|
ttnn_visualizer/serializers.py,sha256=smY3CgbqaAXsovoYZ-A9fgPXih5lUS2HD_3aIZMcFS4,7821
|
14
|
-
ttnn_visualizer/sessions.py,sha256=
|
14
|
+
ttnn_visualizer/sessions.py,sha256=PI_FXY-b0jRWutQVv4DOonPa30MemXU-hhRHfcIUe5E,8863
|
15
15
|
ttnn_visualizer/settings.py,sha256=kC0mBNrZDq1S7RPeRGnPcGZxGuM515A1upsWRrKl5k8,3841
|
16
16
|
ttnn_visualizer/sftp_operations.py,sha256=RrzCGo__2sQ2g4r90qlyFBEq4v6ooX2ntJ7VDKuynC0,17659
|
17
|
-
ttnn_visualizer/sockets.py,sha256=
|
17
|
+
ttnn_visualizer/sockets.py,sha256=o0oTG26LCjTJL8ajHR28ZBp9Z8RfWDehaS8Orns1HoQ,3624
|
18
18
|
ttnn_visualizer/ssh_client.py,sha256=KRLuIk6wxrZZQUQKfC8QWMhXGJQvfKKeyxLThgRX6ak,2679
|
19
19
|
ttnn_visualizer/utils.py,sha256=zD8_B7Dd8sgOQF52LNQ5HrLxuvfZg-YnxLrZOpuA5Lw,6372
|
20
|
-
ttnn_visualizer/views.py,sha256=
|
20
|
+
ttnn_visualizer/views.py,sha256=nYpWsXnBG6yQEoBYcQk-nrdDFUIsYiYoV8ibSw1h960,27986
|
21
21
|
ttnn_visualizer/bin/docker-entrypoint-web,sha256=uuv6aubpMCfOcuvDBxwBDITE8PN39teuwyJ2zA5KWuw,413
|
22
22
|
ttnn_visualizer/bin/pip3-install,sha256=nbSRT4GfJQIQ9KTNO3j-6b5WM4lrx9XA4GBlAURRMws,502
|
23
|
-
ttnn_visualizer/static/index.html,sha256
|
24
|
-
ttnn_visualizer/static/assets/allPaths-
|
25
|
-
ttnn_visualizer/static/assets/allPathsLoader-
|
23
|
+
ttnn_visualizer/static/index.html,sha256=-xKtWkEXDvLNuFbx-caVzW9cauQ7wbEIJ6TDoZ60d-M,923
|
24
|
+
ttnn_visualizer/static/assets/allPaths-C0lxNW4g.js,sha256=NqK57TUArz2zO0c-N-FvXOZD94vniXH5S6CLFtwYEzQ,309
|
25
|
+
ttnn_visualizer/static/assets/allPathsLoader-DNFRLKF6.js,sha256=uOYpPucTlxRpiUtyFPcz0A3RIqk1SCu2dYOUTVe0GM0,550
|
26
|
+
ttnn_visualizer/static/assets/index-BTfoVg9a.css,sha256=3Ft7KsW9G6k2DYkHJvRwadGpYzSjTPVBAetC0r5xnVQ,615889
|
26
27
|
ttnn_visualizer/static/assets/index-BVMreIQm.js,sha256=QJTBb4VVCMoLPYsWdru3heJX1VtMJQYJGx-tq8gZNTw,280965
|
28
|
+
ttnn_visualizer/static/assets/index-BVO5CCjN.js,sha256=7igIcb9WW473cQCRs7RFOkBlPiiddGAnrVn_gna6qh8,6985407
|
27
29
|
ttnn_visualizer/static/assets/index-Do7YB6C4.js,sha256=10jCIy7zph8mPB2htGfhXJBV7LO2FFrGhfz7xoQyh00,289378
|
28
|
-
ttnn_visualizer/static/assets/index-S-_ELv4m.css,sha256=kxiQqeXqJGktQJBJoh-Tz9Nl8LBscsNrDzyUIlwDsYc,615142
|
29
|
-
ttnn_visualizer/static/assets/index-rIoXC5rS.js,sha256=f5GLHBcuD9P2x4TNwE_kaIj6TWgSCIyvNesqZ11tMFA,6983612
|
30
30
|
ttnn_visualizer/static/assets/site-BTBrvHC5.webmanifest,sha256=Uy_XmnGuYFVf-OZuma2NvgEPdrCrevb3HZvaxSIHoA0,456
|
31
|
-
ttnn_visualizer/static/assets/splitPathsBySizeLoader-
|
31
|
+
ttnn_visualizer/static/assets/splitPathsBySizeLoader-BOgPj0vG.js,sha256=RFeUguwH4nw2TlsM-LmXYHrIyCT0dxGyhowKdo2hoc0,472
|
32
32
|
ttnn_visualizer/static/favicon/android-chrome-192x192.png,sha256=BZWA09Zxaa3fXbaeS6nhWo2e-DUSjm9ElzNQ_xTB5XU,6220
|
33
33
|
ttnn_visualizer/static/favicon/android-chrome-512x512.png,sha256=HBiJSZyguB3o8fMJuqIGcpeBy_9JOdImme3wD02UYCw,62626
|
34
34
|
ttnn_visualizer/static/favicon/favicon-32x32.png,sha256=Zw201qUsczQv1UvoQvJf5smQ2ss10xaTeWxmQNYCGtY,480
|
@@ -37,10 +37,10 @@ ttnn_visualizer/static/sample-data/cluster-desc.yaml,sha256=LMxOmsRUXtVVU5ogzYkX
|
|
37
37
|
ttnn_visualizer/tests/__init__.py,sha256=qn9AwfHTxYYK0Icz-q2Q41Xo9ET6oc6anZzgh02PhK4,94
|
38
38
|
ttnn_visualizer/tests/test_queries.py,sha256=OoINMZezyJkpiQuM1Owp4DlMoJGTl6OgsUbPa2Rxqc0,16546
|
39
39
|
ttnn_visualizer/tests/test_serializers.py,sha256=966AJkXLAwzsceSQ9QR-Sy7VrEbE71AtfMF3y9ZIIWc,18490
|
40
|
-
ttnn_visualizer-0.
|
41
|
-
ttnn_visualizer-0.
|
42
|
-
ttnn_visualizer-0.
|
43
|
-
ttnn_visualizer-0.
|
44
|
-
ttnn_visualizer-0.
|
45
|
-
ttnn_visualizer-0.
|
46
|
-
ttnn_visualizer-0.
|
40
|
+
ttnn_visualizer-0.27.1.dist-info/LICENSE,sha256=7_uV4foXIbLyroI1M6NdIySajtLuPwayZr1UN2ItErI,11353
|
41
|
+
ttnn_visualizer-0.27.1.dist-info/LICENSE_understanding.txt,sha256=pymi-yb_RvYM9p2ZA4iSNsImcvhDBBxlGuJCY9dTq7M,233
|
42
|
+
ttnn_visualizer-0.27.1.dist-info/METADATA,sha256=G0PcX8XLBijpmAiparzn0_EaJEgZ2bG56uX1rBir7oU,7297
|
43
|
+
ttnn_visualizer-0.27.1.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
|
44
|
+
ttnn_visualizer-0.27.1.dist-info/entry_points.txt,sha256=QpuUpkmQ_mEHJTMqOBdU0MH2Z4WF_9iFsGACeyyAO1E,61
|
45
|
+
ttnn_visualizer-0.27.1.dist-info/top_level.txt,sha256=M1EGkvDOuIfbhDbcUdz2-TSdmCtDoQ2Uyag9k5JLDSY,16
|
46
|
+
ttnn_visualizer-0.27.1.dist-info/RECORD,,
|
File without changes
|
{ttnn_visualizer-0.26.0.dist-info → ttnn_visualizer-0.27.1.dist-info}/LICENSE_understanding.txt
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|