thắc mắc Tốc độ của python

dangle1907

Senior Member
Hi các bác, em mới chuyển sang học python để xử lí data. Nhưng mà em gặp một số vấn đề. Em có 1 bài toán có đpt tầm 1e6, khi thực hiện tính toán trên python thì mất khoảng 1p hơn, còn khi thực hiện trên C++ thì chỉ mất 1s, hoặc là cùng bài toán đó ném dữ liệu vào PBI để xử lí thì cũng chỉ tốn tầm 14,15s. Có phải là do em code thuần ko dùng thư viện như pandas hoặc numpy nên nó bị lâu như thế không hay là do nguyên nhân nào khác ạ. Em cảm ơn các bác
 
Không có sample code thì không chắc được nguyên nhân cụ thể đâu
Nhưng đúng là theo một số khảo sát thì python sẽ chậm hơn một số ngôn ngữ cùng họ khi xử lý data. Có thể thử scala, rust hay gì đó ngoài python.
Bản chất ban đầu python được tạo ra cũng để nghiên cứu sinh tiếp cận code dễ hơn với syntax tường minh và không cần học quá nhiều về IT nên việc nó chậm cũng dễ hiểu. lấy ví dụ dynamic typing giúp người code ko cần care về kiểu dữ liệu cũng một phần làm chậm quá trình xử lý.
 
Hi các bác, em mới chuyển sang học python để xử lí data. Nhưng mà em gặp một số vấn đề. Em có 1 bài toán có đpt tầm 1e6, khi thực hiện tính toán trên python thì mất khoảng 1p hơn, còn khi thực hiện trên C++ thì chỉ mất 1s, hoặc là cùng bài toán đó ném dữ liệu vào PBI để xử lí thì cũng chỉ tốn tầm 14,15s. Có phải là do em code thuần ko dùng thư viện như pandas hoặc numpy nên nó bị lâu như thế không hay là do nguyên nhân nào khác ạ. Em cảm ơn các bác
chuẩn rồi, numpy viết bằng C nó chả nhanh, còn pandas lại tận dung numpy nữa
 
Chậm hơn C++ tầm 50-100 lần là chuẩn rồi.

Nhưng vứt vào numpy thì lại nhanh hơn C++ ấy mà.

Chả ai dùng python vì code thuần, mà dùng vì hệ thống library của nó
 
Có thử thử dùng mấy cái JIT như PyPy, với kiểu thuần tính toán số học có khi nó tăng tốc đc 40-50 lần đấy. Đỡ phải viết lại code, nếu ko ăn thua thì thử với numpy như mấy bác trên bảo.
 
Back
Top