ttnn-visualizer 0.43.1__py3-none-any.whl → 0.44.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 +4 -5
- ttnn_visualizer/csv_queries.py +35 -287
- ttnn_visualizer/decorators.py +5 -6
- ttnn_visualizer/extensions.py +1 -2
- ttnn_visualizer/file_uploads.py +0 -1
- ttnn_visualizer/instances.py +4 -8
- ttnn_visualizer/models.py +3 -7
- ttnn_visualizer/queries.py +11 -18
- ttnn_visualizer/remote_sqlite_setup.py +2 -2
- ttnn_visualizer/settings.py +1 -1
- ttnn_visualizer/sftp_operations.py +4 -9
- ttnn_visualizer/sockets.py +1 -3
- ttnn_visualizer/static/assets/{allPaths-CGmhlOs-.js → allPaths-CFKU23gh.js} +1 -1
- ttnn_visualizer/static/assets/{allPathsLoader-CH9za42_.js → allPathsLoader-CpaihUCo.js} +2 -2
- ttnn_visualizer/static/assets/{index-DEb3r1jy.js → index-B2fHW2_O.js} +418 -411
- ttnn_visualizer/static/assets/index-BueCaPcI.css +7 -0
- ttnn_visualizer/static/assets/{splitPathsBySizeLoader-CP-kodGu.js → splitPathsBySizeLoader-BEb-7YZm.js} +1 -1
- ttnn_visualizer/static/index.html +2 -2
- ttnn_visualizer/tests/test_queries.py +4 -10
- ttnn_visualizer/tests/test_serializers.py +11 -11
- ttnn_visualizer/utils.py +3 -4
- ttnn_visualizer/views.py +34 -83
- {ttnn_visualizer-0.43.1.dist-info → ttnn_visualizer-0.44.1.dist-info}/METADATA +13 -11
- ttnn_visualizer-0.44.1.dist-info/RECORD +42 -0
- {ttnn_visualizer-0.43.1.dist-info → ttnn_visualizer-0.44.1.dist-info}/WHEEL +1 -1
- ttnn_visualizer/bin/docker-entrypoint-web +0 -16
- ttnn_visualizer/bin/pip3-install +0 -17
- ttnn_visualizer/requirements.txt +0 -23
- ttnn_visualizer/static/assets/index-C-t6jBt9.css +0 -7
- ttnn_visualizer-0.43.1.dist-info/RECORD +0 -45
- {ttnn_visualizer-0.43.1.dist-info → ttnn_visualizer-0.44.1.dist-info}/entry_points.txt +0 -0
- {ttnn_visualizer-0.43.1.dist-info → ttnn_visualizer-0.44.1.dist-info/licenses}/LICENSE +0 -0
- {ttnn_visualizer-0.43.1.dist-info → ttnn_visualizer-0.44.1.dist-info/licenses}/LICENSE_understanding.txt +0 -0
- {ttnn_visualizer-0.43.1.dist-info → ttnn_visualizer-0.44.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-B2fHW2_O.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-DLOviMB1.js").then(t=>t.I),[])];case 1:return r=e.sent(),[3,4];case 2:return[4,i(()=>import("./index-B-fsa5Ru.js").then(t=>t.I),[])];case 3:r=e.sent(),e.label=4;case 4:return[2,r[a]]}})})};export{p as splitPathsBySizeLoader};
|
@@ -34,8 +34,8 @@
|
|
34
34
|
/* SERVER_CONFIG */
|
35
35
|
</script>
|
36
36
|
|
37
|
-
<script type="module" crossorigin src="/static/assets/index-
|
38
|
-
<link rel="stylesheet" crossorigin href="/static/assets/index-
|
37
|
+
<script type="module" crossorigin src="/static/assets/index-B2fHW2_O.js"></script>
|
38
|
+
<link rel="stylesheet" crossorigin href="/static/assets/index-BueCaPcI.css">
|
39
39
|
</head>
|
40
40
|
<body>
|
41
41
|
|
@@ -3,19 +3,13 @@
|
|
3
3
|
# SPDX-FileCopyrightText: © 2025 Tenstorrent AI ULC
|
4
4
|
|
5
5
|
|
6
|
-
import tempfile
|
7
6
|
import sqlite3
|
8
7
|
import tempfile
|
9
8
|
import unittest
|
10
|
-
from unittest.mock import Mock
|
11
|
-
|
12
|
-
|
13
|
-
from ttnn_visualizer.
|
14
|
-
DeviceOperation,
|
15
|
-
TensorComparisonRecord,
|
16
|
-
)
|
17
|
-
from ttnn_visualizer.queries import DatabaseQueries
|
18
|
-
from ttnn_visualizer.queries import LocalQueryRunner
|
9
|
+
from unittest.mock import Mock, patch
|
10
|
+
|
11
|
+
from ttnn_visualizer.models import DeviceOperation, TensorComparisonRecord
|
12
|
+
from ttnn_visualizer.queries import DatabaseQueries, LocalQueryRunner
|
19
13
|
|
20
14
|
|
21
15
|
class TestQueryTable(unittest.TestCase):
|
@@ -5,28 +5,28 @@
|
|
5
5
|
import unittest
|
6
6
|
|
7
7
|
from ttnn_visualizer.models import (
|
8
|
-
|
9
|
-
|
10
|
-
|
8
|
+
Buffer,
|
9
|
+
BufferPage,
|
10
|
+
BufferType,
|
11
11
|
Device,
|
12
|
+
DeviceOperation,
|
12
13
|
InputTensor,
|
14
|
+
Operation,
|
15
|
+
OperationArgument,
|
13
16
|
OutputTensor,
|
14
17
|
ProducersConsumers,
|
15
18
|
StackTrace,
|
16
|
-
|
17
|
-
Buffer,
|
18
|
-
BufferType,
|
19
|
-
BufferPage,
|
19
|
+
Tensor,
|
20
20
|
)
|
21
21
|
from ttnn_visualizer.serializers import (
|
22
|
-
|
22
|
+
serialize_buffer_pages,
|
23
|
+
serialize_devices,
|
23
24
|
serialize_inputs_outputs,
|
24
25
|
serialize_operation,
|
25
|
-
serialize_tensors,
|
26
|
-
serialize_buffer_pages,
|
27
26
|
serialize_operation_buffers,
|
27
|
+
serialize_operations,
|
28
28
|
serialize_operations_buffers,
|
29
|
-
|
29
|
+
serialize_tensors,
|
30
30
|
)
|
31
31
|
|
32
32
|
|
ttnn_visualizer/utils.py
CHANGED
@@ -6,13 +6,12 @@ import dataclasses
|
|
6
6
|
import enum
|
7
7
|
import json
|
8
8
|
import logging
|
9
|
+
import re
|
10
|
+
import time
|
9
11
|
from functools import wraps
|
10
12
|
from pathlib import Path
|
11
|
-
import time
|
12
|
-
import re
|
13
13
|
from timeit import default_timer
|
14
|
-
from typing import
|
15
|
-
|
14
|
+
from typing import Any, Callable, Dict, Optional
|
16
15
|
|
17
16
|
logger = logging.getLogger(__name__)
|
18
17
|
|
ttnn_visualizer/views.py
CHANGED
@@ -15,30 +15,22 @@ from typing import List
|
|
15
15
|
|
16
16
|
import yaml
|
17
17
|
import zstd
|
18
|
-
from flask import
|
19
|
-
Blueprint,
|
20
|
-
Response,
|
21
|
-
current_app,
|
22
|
-
jsonify,
|
23
|
-
session,
|
24
|
-
request,
|
25
|
-
)
|
26
|
-
|
18
|
+
from flask import Blueprint, Response, current_app, jsonify, request, session
|
27
19
|
from ttnn_visualizer.csv_queries import (
|
28
20
|
DeviceLogProfilerQueries,
|
21
|
+
NPEQueries,
|
29
22
|
OpsPerformanceQueries,
|
30
23
|
OpsPerformanceReportQueries,
|
31
|
-
NPEQueries,
|
32
24
|
)
|
33
|
-
from ttnn_visualizer.decorators import
|
25
|
+
from ttnn_visualizer.decorators import local_only, with_instance
|
34
26
|
from ttnn_visualizer.enums import ConnectionTestStates
|
35
|
-
from ttnn_visualizer.exceptions import DataFormatError
|
36
|
-
from ttnn_visualizer.exceptions import RemoteConnectionException
|
37
27
|
from ttnn_visualizer.exceptions import (
|
38
|
-
SSHException,
|
39
28
|
AuthenticationException,
|
40
|
-
NoValidConnectionsError,
|
41
29
|
AuthenticationFailedException,
|
30
|
+
DataFormatError,
|
31
|
+
NoValidConnectionsError,
|
32
|
+
RemoteConnectionException,
|
33
|
+
SSHException,
|
42
34
|
)
|
43
35
|
from ttnn_visualizer.file_uploads import (
|
44
36
|
extract_folder_name_from_files,
|
@@ -46,37 +38,34 @@ from ttnn_visualizer.file_uploads import (
|
|
46
38
|
save_uploaded_files,
|
47
39
|
validate_files,
|
48
40
|
)
|
49
|
-
from ttnn_visualizer.instances import
|
50
|
-
get_instances,
|
51
|
-
update_instance,
|
52
|
-
)
|
41
|
+
from ttnn_visualizer.instances import get_instances, update_instance
|
53
42
|
from ttnn_visualizer.models import (
|
54
|
-
|
43
|
+
Instance,
|
55
44
|
RemoteConnection,
|
45
|
+
RemoteReportFolder,
|
56
46
|
StatusMessage,
|
57
|
-
Instance,
|
58
47
|
)
|
59
48
|
from ttnn_visualizer.queries import DatabaseQueries
|
60
|
-
from ttnn_visualizer.remote_sqlite_setup import
|
49
|
+
from ttnn_visualizer.remote_sqlite_setup import check_sqlite_path, get_sqlite_path
|
61
50
|
from ttnn_visualizer.serializers import (
|
62
|
-
|
63
|
-
serialize_tensors,
|
64
|
-
serialize_operation,
|
51
|
+
serialize_buffer,
|
65
52
|
serialize_buffer_pages,
|
53
|
+
serialize_devices,
|
54
|
+
serialize_operation,
|
66
55
|
serialize_operation_buffers,
|
56
|
+
serialize_operations,
|
67
57
|
serialize_operations_buffers,
|
68
|
-
|
69
|
-
serialize_buffer,
|
58
|
+
serialize_tensors,
|
70
59
|
)
|
71
60
|
from ttnn_visualizer.sftp_operations import (
|
72
|
-
sync_remote_profiler_folders,
|
73
|
-
read_remote_file,
|
74
|
-
check_remote_path_for_reports,
|
75
|
-
get_remote_profiler_folders,
|
76
61
|
check_remote_path_exists,
|
62
|
+
check_remote_path_for_reports,
|
63
|
+
get_cluster_desc,
|
77
64
|
get_remote_performance_folders,
|
65
|
+
get_remote_profiler_folders,
|
66
|
+
read_remote_file,
|
78
67
|
sync_remote_performance_folders,
|
79
|
-
|
68
|
+
sync_remote_profiler_folders,
|
80
69
|
)
|
81
70
|
from ttnn_visualizer.utils import (
|
82
71
|
get_cluster_descriptor_path,
|
@@ -316,48 +305,24 @@ def operation_detail(operation_id, instance: Instance):
|
|
316
305
|
@timer
|
317
306
|
def operation_history(instance: Instance):
|
318
307
|
operation_history_filename = "operation_history.json"
|
319
|
-
|
320
|
-
|
321
|
-
|
322
|
-
|
323
|
-
|
324
|
-
|
325
|
-
|
326
|
-
),
|
327
|
-
)
|
328
|
-
if not operation_history:
|
329
|
-
return []
|
330
|
-
return json.loads(operation_history)
|
331
|
-
else:
|
332
|
-
operation_history_file = (
|
333
|
-
Path(str(instance.profiler_path)).parent / operation_history_filename
|
334
|
-
)
|
335
|
-
if not operation_history_file.exists():
|
336
|
-
return []
|
337
|
-
with open(operation_history_file, "r") as file:
|
338
|
-
return json.load(file)
|
308
|
+
operation_history_file = (
|
309
|
+
Path(str(instance.profiler_path)).parent / operation_history_filename
|
310
|
+
)
|
311
|
+
if not operation_history_file.exists():
|
312
|
+
return []
|
313
|
+
with open(operation_history_file, "r") as file:
|
314
|
+
return json.load(file)
|
339
315
|
|
340
316
|
|
341
317
|
@api.route("/config")
|
342
318
|
@with_instance
|
343
319
|
@timer
|
344
320
|
def get_config(instance: Instance):
|
345
|
-
|
346
|
-
|
347
|
-
|
348
|
-
|
349
|
-
|
350
|
-
remote_path=Path(instance.remote_profiler_folder.remotePath, "config.json"),
|
351
|
-
)
|
352
|
-
if not config:
|
353
|
-
return {}
|
354
|
-
return config
|
355
|
-
else:
|
356
|
-
config_file = Path(str(instance.profiler_path)).parent.joinpath("config.json")
|
357
|
-
if not config_file.exists():
|
358
|
-
return {}
|
359
|
-
with open(config_file, "r") as file:
|
360
|
-
return json.load(file)
|
321
|
+
config_file = Path(str(instance.profiler_path)).parent.joinpath("config.json")
|
322
|
+
if not config_file.exists():
|
323
|
+
return {}
|
324
|
+
with open(config_file, "r") as file:
|
325
|
+
return json.load(file)
|
361
326
|
|
362
327
|
|
363
328
|
@api.route("/tensors", methods=["GET"])
|
@@ -1187,20 +1152,6 @@ def test_remote_folder():
|
|
1187
1152
|
except RemoteConnectionException as e:
|
1188
1153
|
add_status(ConnectionTestStates.FAILED.value, e.message)
|
1189
1154
|
|
1190
|
-
# Test Sqlite binary path configuration
|
1191
|
-
if not has_failures() and connection.useRemoteQuerying:
|
1192
|
-
if not connection.sqliteBinaryPath:
|
1193
|
-
add_status(ConnectionTestStates.FAILED, "SQLite binary path not provided")
|
1194
|
-
else:
|
1195
|
-
try:
|
1196
|
-
check_sqlite_path(connection)
|
1197
|
-
add_status(ConnectionTestStates.OK, "SQLite binary found.")
|
1198
|
-
except AuthenticationFailedException as e:
|
1199
|
-
add_status(ConnectionTestStates.FAILED.value, e.message)
|
1200
|
-
return [status.model_dump() for status in statuses], e.http_status
|
1201
|
-
except RemoteConnectionException as e:
|
1202
|
-
add_status(ConnectionTestStates.FAILED, e.message)
|
1203
|
-
|
1204
1155
|
return [status.model_dump() for status in statuses]
|
1205
1156
|
|
1206
1157
|
|
@@ -1324,7 +1275,7 @@ def use_remote_folder():
|
|
1324
1275
|
folder_name,
|
1325
1276
|
)
|
1326
1277
|
|
1327
|
-
if not
|
1278
|
+
if not connection_directory.exists():
|
1328
1279
|
return Response(
|
1329
1280
|
status=HTTPStatus.INTERNAL_SERVER_ERROR,
|
1330
1281
|
response=f"{connection_directory} does not exist.",
|
@@ -1,6 +1,6 @@
|
|
1
|
-
Metadata-Version: 2.
|
1
|
+
Metadata-Version: 2.4
|
2
2
|
Name: ttnn_visualizer
|
3
|
-
Version: 0.
|
3
|
+
Version: 0.44.1
|
4
4
|
Summary: TT-NN Visualizer
|
5
5
|
Classifier: Programming Language :: Python :: 3
|
6
6
|
Classifier: License :: OSI Approved :: MIT License
|
@@ -9,26 +9,28 @@ Requires-Python: >=3.10
|
|
9
9
|
Description-Content-Type: text/markdown
|
10
10
|
License-File: LICENSE
|
11
11
|
License-File: LICENSE_understanding.txt
|
12
|
-
Requires-Dist:
|
13
|
-
Requires-Dist: Flask-Cors==
|
12
|
+
Requires-Dist: build
|
13
|
+
Requires-Dist: Flask-Cors==6.0.0
|
14
|
+
Requires-Dist: flask-socketio==5.4.1
|
15
|
+
Requires-Dist: flask-sqlalchemy==3.1.1
|
14
16
|
Requires-Dist: Flask-Static-Digest==0.4.1
|
15
|
-
Requires-Dist: Flask
|
16
|
-
Requires-Dist:
|
17
|
+
Requires-Dist: Flask==3.1.1
|
18
|
+
Requires-Dist: gevent==24.10.2
|
19
|
+
Requires-Dist: gunicorn~=23.0.0
|
17
20
|
Requires-Dist: pandas==2.2.3
|
18
|
-
Requires-Dist:
|
21
|
+
Requires-Dist: pydantic_core==2.18.4
|
19
22
|
Requires-Dist: pydantic==2.7.3
|
20
|
-
Requires-Dist: pydantic-core==2.18.4
|
21
|
-
Requires-Dist: setuptools==65.5.0
|
22
|
-
Requires-Dist: gevent===24.10.2
|
23
23
|
Requires-Dist: python-dotenv==1.0.1
|
24
|
-
Requires-Dist: sqlalchemy==2.0.34
|
25
24
|
Requires-Dist: PyYAML==6.0.2
|
26
25
|
Requires-Dist: tt-perf-report==1.0.7
|
26
|
+
Requires-Dist: uvicorn==0.30.1
|
27
27
|
Requires-Dist: zstd==1.5.7.0
|
28
28
|
Provides-Extra: dev
|
29
29
|
Requires-Dist: black==25.1.0; extra == "dev"
|
30
|
+
Requires-Dist: isort==6.0.1; extra == "dev"
|
30
31
|
Requires-Dist: mypy; extra == "dev"
|
31
32
|
Requires-Dist: pytest==8.4.1; extra == "dev"
|
33
|
+
Dynamic: license-file
|
32
34
|
|
33
35
|
|
34
36
|
<div align="center">
|
@@ -0,0 +1,42 @@
|
|
1
|
+
ttnn_visualizer/__init__.py,sha256=FCQeTWnXsf-Wx-fay53-lQsm0y5-GcPMUmzhE5upDx0,93
|
2
|
+
ttnn_visualizer/app.py,sha256=q5Tb_69HawKdiw2uKe6_cOmYfvU5as40DoREvLfb_38,7281
|
3
|
+
ttnn_visualizer/csv_queries.py,sha256=5RacmSEsNcRx0ZpZQREMbfePfVEG5gcKu_tGo9YZz-c,16644
|
4
|
+
ttnn_visualizer/decorators.py,sha256=O1QJwuQOHsFNL1H9qOdwe2zlc8r5DsboQOmE6LFwksw,5848
|
5
|
+
ttnn_visualizer/enums.py,sha256=SEIqp1tlc_zw2vQ8nHH9YTaV0m3Cb8fjn_goqz5wurE,203
|
6
|
+
ttnn_visualizer/exceptions.py,sha256=iXx1EmodousLr2y-PKpwYcxV_qJKVcvvjPMn4V-9M0w,2124
|
7
|
+
ttnn_visualizer/extensions.py,sha256=6OIRJ8-_ccfjOaXSruRXiS29jEbxp4Pyk-0JlD8IHBQ,379
|
8
|
+
ttnn_visualizer/file_uploads.py,sha256=05FzYjZZy1RHuGgFeJiAjtrpzYd6KcrZzpvIjBCUZss,5011
|
9
|
+
ttnn_visualizer/instances.py,sha256=XctQgQXdlwtuXWFXFletRoX1m1lGUZdiW3TwIIjY0uw,11564
|
10
|
+
ttnn_visualizer/models.py,sha256=6Uf44DZv9SZLcPeuqPoiuggo9hy7VWSngG7ILlne4hM,7781
|
11
|
+
ttnn_visualizer/queries.py,sha256=3Nv0jXIDNVH-qKx9xc9zSINy4FdmDidu-1I6f-VYV48,9603
|
12
|
+
ttnn_visualizer/remote_sqlite_setup.py,sha256=kGAUcUaDaB8wGSYdgJkkZ6te3ThnlVfSt1ooIQXxf_k,5959
|
13
|
+
ttnn_visualizer/serializers.py,sha256=LmjHIrFg8BLx1JKVFh9Nd_TcA7nyy1MwY2BOGnX1MKw,8029
|
14
|
+
ttnn_visualizer/settings.py,sha256=k2EEjbQNR8khbl5IrOetBPhbqgLlqXvuhm0E2z9ImCM,4607
|
15
|
+
ttnn_visualizer/sftp_operations.py,sha256=Bq2wMP1bxFZ7otWEfG7hI35K1LKrFSpI0DlvR9F5xCo,32569
|
16
|
+
ttnn_visualizer/sockets.py,sha256=W5pK0QmlsU58EH_Qnra6HlcswLS7vsw5C_pk4avVYvs,3706
|
17
|
+
ttnn_visualizer/utils.py,sha256=MYCpvP9z8yoIVwI2Sa3iUahajZMLDxRmtRWrrUyB4_8,6223
|
18
|
+
ttnn_visualizer/views.py,sha256=V3Lc4qP6oRHS9JiJUJ1EJec-R0Y_111yIxEkWTevhcU,47562
|
19
|
+
ttnn_visualizer/static/index.html,sha256=GUV4a5OSL2wahtN3v014uP6EBNnrDaZOpc4LyDpKhUQ,1135
|
20
|
+
ttnn_visualizer/static/assets/allPaths-CFKU23gh.js,sha256=Djb6ehl9_Oi6h-IXxyMfuD2WRZC5EhHMUuQ7FYyPuwk,309
|
21
|
+
ttnn_visualizer/static/assets/allPathsLoader-CpaihUCo.js,sha256=TPbvDoluGcmILaYp-OoYnF5eu9fLhfvRp95H37JjND0,550
|
22
|
+
ttnn_visualizer/static/assets/index-B-fsa5Ru.js,sha256=IonL7d7ppdDr-_FRJZQPWI4HHFTiygYvZGVlUxHY9R8,294235
|
23
|
+
ttnn_visualizer/static/assets/index-B2fHW2_O.js,sha256=mSlArWSU_SoseLwfOPqYCXbZikRxe6jDUKn5ESsGgLU,7914287
|
24
|
+
ttnn_visualizer/static/assets/index-BueCaPcI.css,sha256=v46sw7YX6b0H_-jtzUK5KpMblgKO4Ynf7EOIPykgkLc,623717
|
25
|
+
ttnn_visualizer/static/assets/index-DLOviMB1.js,sha256=sI0W1vvwqvIwKP2_jglrwOhej3n5rJD72-d4ZhlUHqM,285612
|
26
|
+
ttnn_visualizer/static/assets/site-BTBrvHC5.webmanifest,sha256=Uy_XmnGuYFVf-OZuma2NvgEPdrCrevb3HZvaxSIHoA0,456
|
27
|
+
ttnn_visualizer/static/assets/splitPathsBySizeLoader-BEb-7YZm.js,sha256=OLNw1QZHTfy8PlIYkCTfm3h5nOZSy0AUIr2Vf0cBpqE,472
|
28
|
+
ttnn_visualizer/static/favicon/android-chrome-192x192.png,sha256=BZWA09Zxaa3fXbaeS6nhWo2e-DUSjm9ElzNQ_xTB5XU,6220
|
29
|
+
ttnn_visualizer/static/favicon/android-chrome-512x512.png,sha256=HBiJSZyguB3o8fMJuqIGcpeBy_9JOdImme3wD02UYCw,62626
|
30
|
+
ttnn_visualizer/static/favicon/favicon-32x32.png,sha256=Zw201qUsczQv1UvoQvJf5smQ2ss10xaTeWxmQNYCGtY,480
|
31
|
+
ttnn_visualizer/static/favicon/favicon.svg,sha256=wDPY3VrekJ_DE1TnJ2vUy602K3S4Xe9TgrdZ7jXK9c8,633
|
32
|
+
ttnn_visualizer/static/sample-data/cluster-desc.yaml,sha256=LMxOmsRUXtVVU5ogzYkXUozB3dg2IzqIRJQpV_O5qMU,29618
|
33
|
+
ttnn_visualizer/tests/__init__.py,sha256=FCQeTWnXsf-Wx-fay53-lQsm0y5-GcPMUmzhE5upDx0,93
|
34
|
+
ttnn_visualizer/tests/test_queries.py,sha256=HqaDXwudZpXiigJdHkdJP8oiUc-PtHASbpLnQQpbD7A,13792
|
35
|
+
ttnn_visualizer/tests/test_serializers.py,sha256=AF6m6tvewnZ_OSQMgMTUhsOI26GdJHPajvnRGIa9P4U,18492
|
36
|
+
ttnn_visualizer-0.44.1.dist-info/licenses/LICENSE,sha256=-Y7CZK1-MxZZ7l0Rb414S0SZ9tdCby-bMGl_LmFFicM,14806
|
37
|
+
ttnn_visualizer-0.44.1.dist-info/licenses/LICENSE_understanding.txt,sha256=pymi-yb_RvYM9p2ZA4iSNsImcvhDBBxlGuJCY9dTq7M,233
|
38
|
+
ttnn_visualizer-0.44.1.dist-info/METADATA,sha256=CNIAQJsaeYCF8N2fQ2hbwJTqGkgRPZgfjM02PGp9Ujs,7557
|
39
|
+
ttnn_visualizer-0.44.1.dist-info/WHEEL,sha256=lTU6B6eIfYoiQJTZNc-fyaR6BpL6ehTzU3xGYxn2n8k,91
|
40
|
+
ttnn_visualizer-0.44.1.dist-info/entry_points.txt,sha256=QpuUpkmQ_mEHJTMqOBdU0MH2Z4WF_9iFsGACeyyAO1E,61
|
41
|
+
ttnn_visualizer-0.44.1.dist-info/top_level.txt,sha256=M1EGkvDOuIfbhDbcUdz2-TSdmCtDoQ2Uyag9k5JLDSY,16
|
42
|
+
ttnn_visualizer-0.44.1.dist-info/RECORD,,
|
@@ -1,16 +0,0 @@
|
|
1
|
-
#!/usr/bin/env bash
|
2
|
-
|
3
|
-
# SPDX-License-Identifier: Apache-2.0
|
4
|
-
#
|
5
|
-
# SPDX-FileCopyrightText: © 2024 Tenstorrent AI ULC
|
6
|
-
|
7
|
-
set -e
|
8
|
-
|
9
|
-
# Always keep this here as it ensures your latest built assets make their way
|
10
|
-
# into your volume persisted public directory.
|
11
|
-
cp -r /public /app/backend/ttnn_visualizer/static
|
12
|
-
|
13
|
-
echo "Running as user: $(whoami)"
|
14
|
-
echo "Keys present in agent: $(ssh-add -L)"
|
15
|
-
echo "Current env $(env)"
|
16
|
-
exec "$@"
|
ttnn_visualizer/bin/pip3-install
DELETED
@@ -1,17 +0,0 @@
|
|
1
|
-
#!/usr/bin/env bash
|
2
|
-
|
3
|
-
# SPDX-License-Identifier: Apache-2.0
|
4
|
-
#
|
5
|
-
# SPDX-FileCopyrightText: © 2024 Tenstorrent AI ULC
|
6
|
-
|
7
|
-
set -e
|
8
|
-
|
9
|
-
pip3 install --no-warn-script-location --no-cache-dir --user -r requirements.txt
|
10
|
-
|
11
|
-
# If requirements.txt is newer than the lock file or the lock file doesn't exist.
|
12
|
-
if [ requirements.txt -nt requirements-lock.txt ]; then
|
13
|
-
pip3 freeze --user > requirements-lock.txt
|
14
|
-
fi
|
15
|
-
|
16
|
-
pip3 install --no-warn-script-location --no-cache-dir --user \
|
17
|
-
-r requirements.txt -c requirements-lock.txt
|
ttnn_visualizer/requirements.txt
DELETED
@@ -1,23 +0,0 @@
|
|
1
|
-
Flask==3.1.1
|
2
|
-
gunicorn~=22.0.0
|
3
|
-
uvicorn==0.30.1
|
4
|
-
flask_cors==4.0.1
|
5
|
-
pydantic==2.7.3
|
6
|
-
pydantic_core==2.18.4
|
7
|
-
flask_static_digest==0.4.1
|
8
|
-
setuptools==65.5.0
|
9
|
-
python-dotenv==1.0.1
|
10
|
-
flask-sqlalchemy
|
11
|
-
flask-socketio
|
12
|
-
gevent==24.10.2
|
13
|
-
pandas==2.2.3
|
14
|
-
wheel
|
15
|
-
build
|
16
|
-
PyYAML==6.0.2
|
17
|
-
python-dotenv==1.0.1
|
18
|
-
tt-perf-report==1.0.7
|
19
|
-
zstd==1.5.7.0
|
20
|
-
|
21
|
-
# Dev dependencies
|
22
|
-
mypy
|
23
|
-
black==25.1.0
|