SASGIS - SAS.Планета |
View Issue Details |
|
ID | Project | Category | View Status | Date Submitted | Last Update |
0002462 | SAS.Планета | Рефакторинг | public | 16-07-2014 18:05 | 24-10-2014 14:32 |
|
Reporter | zed | |
Assigned To | | |
Priority | normal | Severity | minor | Reproducibility | have not tried |
Status | confirmed | Resolution | open | |
Platform | | OS | | OS Version | |
Product Version | 140505 | |
Target Version | 26xxxx | Fixed in Version | | |
|
Summary | 0002462: В подсистеме sml меток оптимизировать чтение геометрии |
Description | Сейчас вся геометрия читается при загрузке программы. Нужно всё переделать таким образом, чтобы при старте загружалась только "лёгкая" информация - IMarkId.
Всю же остальную часть (геометрию и описание, которое тоже может быть увесистым) нужно загружать строго "по требованию". |
Steps To Reproduce | |
Additional Information | Провёл небольшой замер производительности загрузки программы с отключёнными метками (включено скрыть все). Так вот, загрузка и парсинг меток в датасет заняла 4 сек, плюс столько же времени заняло получение/парсинг геометрии из датасета и ещё столько же времени ушло на создание векторного объекта, который пользуется внутрях SAS.
В качестве теста использовал полигоны таймзон (самые детализированные), которые были импортированы заранее. Всего около 28 тыс. простых полигонов.
Таким образом, загрузку меток можно увеличить в 2-3 раза.
|
Tags | No tags attached. |
Relationships | related to | 0002463 | confirmed | | В подсистеме sml меток оптимизировать поиск вхождения элементов в прямоугольник |
|
Attached Files | perfcnt.png (4,933) 16-07-2014 18:05 https://bugtracker.sasgis.org/file_download.php?file_id=1746&type=bug
|
|
Issue History |
Date Modified | Username | Field | Change |
16-07-2014 18:05 | zed | New Issue | |
16-07-2014 18:05 | zed | File Added: perfcnt.png | |
16-07-2014 18:40 | zed | Relationship added | related to 0002463 |
16-07-2014 18:59 | vdemidov | Note Added: 0014436 | |
17-07-2014 07:07 | vdemidov | Note Added: 0014441 | |
17-07-2014 07:48 | zed | Note Added: 0014442 | |
17-07-2014 07:55 | vdemidov | Note Added: 0014443 | |
17-07-2014 12:57 | zed | Note Added: 0014444 | |
17-07-2014 13:12 | vdemidov | Note Added: 0014445 | |
24-10-2014 14:32 | vdemidov | Status | new => confirmed |
24-10-2014 14:32 | vdemidov | Target Version | => 26xxxx |
Notes |
|
|
Не спорю. Я для того всю эту бодягу с IMarkId и поддерживаю, что бы можно было когда-нибудь это все дело оптимизировать. |
|
|
|
О. Кстати. Перед тем как что-то оптимизировать сделай тестик в папочке Benchmark. Только грузить саму базу не из файла, а предварительно в мемористрим прочитать на стартапе. А саму базу c полигонами таймзон положить в папку Benchmark\Data.
Ну или хотя бы базу закинь, что бы мне не ковыряться, раз уж у тебя она есть. |
|
|
(0014442)
|
zed
|
17-07-2014 07:48
|
|
Там как бы 10 Мб в архиве. А в распакованном все 100. |
|
|
|
Мда. Многовато. Может тогда частично, на пару мегабайт? Или придумать как-то автоматически нагенерировать для теста данных с похожим распределением? |
|
|
(0014444)
|
zed
|
17-07-2014 12:57
|
|
Да нагенерировать можно без проблем. Главное условие - несколько тысяч точек в полигонах. И чем больше точек будет, тем отчётливее будет тормозить на их парсинге. |
|
|
|
Было бы очень хорош таки сделать какой-то тест производительности перед оптимизациями. Что бы можно было сравнивать более менее реальные числа. |
|