Các chức năng cốt lõi trong QGIS sẽ khai thác đa luồng?


10

Sau khi đọc Kích hoạt xử lý đa luồng trong QGIS? , Tôi đã tự hỏi nếu QGIS 2.6 sẽ bao gồm điều này khi chạy các quy trình khác nhau. Tôi đã kiểm tra trực tuyến và tôi chỉ có thể thấy rằng kết xuất đa luồng đã được giới thiệu cho QGIS 2.4 (Tôi cho rằng nó sẽ lại có sẵn trong 2.6). Bây giờ bản đồ có thể được vẽ lại rất nhanh, đặc biệt là khi xử lý các bộ dữ liệu lớn.

Tôi đọc rằng khá khó khăn để bao gồm đa luồng cho chức năng cốt lõi và người dùng được khuyên nên thao tác mã Python để đạt được điều này, chẳng hạn như trong các hoạt động song song của GIS trong PyQGIS? .

Tôi cũng đã kiểm tra yêu cầu tính năng nhưng nó đã bị đóng trong 9 tháng nay bởi Tim Sutton với nhận xét cuối cùng là:

"Tôi sẽ kết thúc việc này - Martin Dobias có một triển khai trong một chi nhánh sẽ được sáp nhập sau bài viếtISIS 2.2"

Một số chức năng trong QGIS 2.6 sẽ khai thác đa luồng (hoặc một lần nữa nó sẽ được tập trung vào kết xuất) và nếu không, điều đó có thay đổi ở QGIS 3.0 không?


Đa luồng không đặc biệt thích hợp cho phần lớn các tác vụ GIS, có xu hướng được định hướng theo luồng, đơn giản và ràng buộc I / O. Khó khăn trong việc kết hợp lại thường không đáng để nỗ lực xếp hàng chúng một cách độc lập (ngược lại thực hiện nhiệm vụ đơn giản). Do đó, định nghĩa của "khai thác" là đối tượng của cuộc tranh luận quan trọng.
Vince

@Vince - Cảm ơn, tôi hiểu rằng đa luồng không phải là ưu tiên hàng đầu cho nhiều trường hợp sử dụng. Nhưng vì một số công việc để đạt được điều này đã được thực hiện, tôi đã tự hỏi liệu hỗ trợ cho việc này (có thể là một thuật ngữ tốt hơn "khai thác") sẽ có mặt trong phiên bản QGIS mới =)
Joseph

1
@PolyGeo - Cảm ơn, một điểm công bằng và một điểm khá phù hợp với định dạng Q / A này. Tôi đồng ý :)
Joseph

Câu trả lời:


3

Tôi nghĩ rằng câu trả lời cho QGIS 3.0 có thể được tìm thấy trong cuộc trò chuyện gần đây được đăng trên Nabble :

Xử lý trong QGIS 3 sẽ hỗ trợ song song?

Trích dẫn Nyall Dawson:

Nếu bạn sau khi song song hóa trong một thuật toán duy nhất (Ví dụ: tính năng đệm bằng nhiều luồng) thì tôi không biết có kế hoạch nào để xử lý việc này.


Đẹp tìm thấy! Mặc dù tôi hơi bối rối với câu trích dẫn theo những gì bạn đã trích dẫn: "Cách dễ dàng và (về mặt lý thuyết) để có được các thuật toán đa luồng, và sẽ rất đơn giản để điều chỉnh nhiều thuật toán hiện có cho điều này (bộ đệm, centroid, biến đổi, dịch, .... Về cơ bản, mọi thứ hoạt động trên từng tính năng đều tách biệt). " . Theo hiểu biết của tôi, hầu hết các thuật toán đều hoạt động trên từng tính năng riêng lẻ bởi vì nếu bạn không chọn thủ công các tính năng riêng lẻ, thuật toán sẽ tự động xử lý tất cả các tính năng đó?
Joseph

Tôi nghĩ rằng trích dẫn mà bạn đã trích dẫn là về khả năng thực hiện chỉnh sửa trực tiếp trên lớp (thay vì tạo ra một đầu ra mới): thực tế, sau đây, ông nói về khả năng thực hiện thao tác đệm trực tiếp trên lớp hiện tại, mà không cần xử lý thêm của đầu ra trả lại.
mgri

1
Hmm điểm tốt. Tôi hy vọng một nhà phát triển của QGIS cũng có thể bình luận và xác nhận điều này :)
Joseph

2
GIS SE không phải là một trang web thảo luận. Nếu bạn muốn có phản hồi từ một nhà cung cấp cụ thể, tôi khuyên bạn nên truy vấn họ trực tiếp.
Vince

1
@joseph Có nhiều thuật toán (ví dụ: tính toán giao điểm đường hoặc tính năng hòa tan) trong đó người ta không thể hoạt động trên các tính năng riêng lẻ.
underdark

4

Chỉ hiển thị tại thời điểm hiện tại (QGIS 2.6).

Martin và tôi đã nói về một số loại API quy trình chung chung nhưng nó chỉ nói về thời điểm hiện tại.


1
Cảm ơn Nathan, cá nhân bạn có nghĩ rằng liên doanh này đáng để theo đuổi hay việc thêm / cải thiện chức năng được coi là ưu tiên cao hơn? Điều này chỉ vì tò mò :)
Joseph

Nó đáng để theo đuổi, nhưng tôi không nghi ngờ đó là một nhiệm vụ dễ dàng.
Nathan W
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.