Warum dauert NumPy Load() in einem größeren Skript länger als in einem anderen?Python

Python-Programme
Anonymous
 Warum dauert NumPy Load() in einem größeren Skript länger als in einem anderen?

Post by Anonymous »

Ich suche nach einem Auslöser, und wenn ich ihn erhalte, lade ich eine .npy-Datei und verarbeite sie. Es begann fast 2 Sekunden zu dauern, die NumPy-Datei innerhalb des Prozesses zu laden, aber als ich versuchte, dieselbe Datei aus einem anderen Skript zu laden, dauerte es 0,015 Sekunden.
Wie kann ich das diagnostizieren? Früher funktionierte es sofort, und ich bin nicht sicher, warum es seit drei Wochen länger dauert. Das Produktionsskript verwendet Multiprocessing. Ich habe ein Modul erstellt, das mehrere Definitionen enthält, und rufe eine dieser Definitionen im Multiprocessing-Skript auf:

Code: Select all

from projectAI.projectAI import dataProcessor
.
.
.
initializations
.
.
.

processes = []
process1 = Process(target = dataProcessor,
args   = (genModelName, dataPath, DB, Max, Min),
daemon = True)
processes.append(process1)

for i in range(Count):
process = Process(target = appEstimator,
args   = (Data, str(i+1), city),
daemon = True)
processes.append(process)

for process in processes:
process.start()

for process in processes:
process.join()
Die Definition „dataProcessor“ im Modul „projectAI“:

Code: Select all

dataProcessor(genModelName, dataPath, DB, Max, Min):

while True:

# Check for a new entry in DB using queries

if newEntry:
data = np.load(dataPath + newEntry["fileName"] + ".npy")

# Further processing
Dies ist seit Monaten in Produktion und hatte nie Probleme. Plötzlich dauerte das Laden dieser Datei 1,8 bis 2 Sekunden. Ich habe das folgende Skript in derselben Umgebung ausgeführt:

Code: Select all

import numpy as np, time
T1 = time.time()
data = np.load(dataPath + newEntry["fileName"] + ".npy")
T2 = time.time()
print(T2-T1)
Das dauert nur 0,015 Sekunden. Was könnte die Ursache sein?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post