查看完整版本 : 迎來全新sorting algorithm 第二版,再加左小小速,並提供下載。

ncream 2017-11-13 02:48 PM

迎來全新sorting algorithm 第二版,再加左小小速,並提供下載。

[size=5][color=#ff0000]今次修改左小小,並加入煙師兄的Check code[/color][/size]

[attach]7561657[/attach]

[color=#0000ff]Sort 既數變成真正32 BIT,由於分散左大左,所以時間多左,1250ms,但因為用左加速,又快左,一來一回最後係快左小小。1109ms。

可以比你輸入要SORT幾多個數,方便測試。

也可以隨你意願輸出第 n 個之後100個數。

P.S.  網上互相share,我也用心真誠對待大家,係呢到無名無利。但求開心。[/color]

[url=https://www.sendspace.com/file/tzn1ib]https://www.sendspace.com/file/tzn1ib[/url]


[color=#0000ff]今次重係單thread,呢排同老細傾緊揾人重寫system,還是自己人寫返。會比較忙,得閒整埋multi-thread。[/color]
[color=#0000ff][/color]
[color=#0000ff]****multi-thread版本若果寫起,source code會比部份人士。[/color]

[[i] 本帖最後由 ncream 於 2017-11-13 03:56 PM 編輯 [/i]]

sswroom 2017-11-13 03:55 PM

[quote]原帖由 [i]ncream[/i] 於 2017-11-13 02:48 PM 發表 [url=http://computer.discuss.com.hk/redirect.php?goto=findpost&pid=470810485&ptid=27055535][img]http://computer.discuss.com.hk/images/common/back.gif[/img][/url]
今次修改左小小,並加入煙師兄的Check code

7561657

Sort 既數變成真正32 BIT,由於分散左大左,所以時間多左,1250ms,但因為用左加速,又快左,一來一回最後係快左小小。1109ms。

可以比你輸入要SORT幾多 ... [/quote]條Link是shop5.xlsb......正確嗎?

[[i] 本帖最後由 ncream 於 2017-11-13 03:57 PM 編輯 [/i]]

ncream 2017-11-13 03:58 PM

[quote]原帖由 [i]sswroom[/i] 於 2017-11-13 03:55 PM 發表 [url=http://computer.discuss.com.hk/redirect.php?goto=findpost&pid=470813536&ptid=27055535][img]http://computer.discuss.com.hk/images/common/back.gif[/img][/url]
條Link是shop5.xlsb......正確嗎? [/quote]
按錯掣,應該係引用。

OH! 搞錯LINK。

修正返。

[url=https://www.sendspace.com/file/tzn1ib]https://www.sendspace.com/file/tzn1ib[/url]

sswroom 2017-11-13 04:38 PM

[quote]原帖由 [i]ncream[/i] 於 2017-11-13 03:58 PM 發表 [url=http://computer.discuss.com.hk/redirect.php?goto=findpost&pid=470813689&ptid=27055535][img]http://computer.discuss.com.hk/images/common/back.gif[/img][/url]

按錯掣,應該係引用。

OH! 搞錯LINK。

修正返。

[url=https://www.sendspace.com/file/tzn1ib]https://www.sendspace.com/file/tzn1ib[/url] [/quote]不是In-place sort? Memory usage好似比實際所需大一倍.....

ncream 2017-11-13 04:41 PM

[quote]原帖由 [i]sswroom[/i] 於 2017-11-13 04:38 PM 發表 [url=http://computer.discuss.com.hk/redirect.php?goto=findpost&pid=470815531&ptid=27055535][img]http://computer.discuss.com.hk/images/common/back.gif[/img][/url]
不是In-place sort? Memory usage好似比實際所需大一倍..... [/quote]

原本係有IN-PLACE,但IN PLACE 版本要慢呢個好多。2200ms。

你個邊既電腦幾多秒?

multi-thread 我要用pthread。等老細有指示想揾人做,還是我地部門做個system,先知有無時間搞。

[[i] 本帖最後由 ncream 於 2017-11-13 04:43 PM 編輯 [/i]]

sswroom 2017-11-13 04:53 PM

[quote]原帖由 [i]ncream[/i] 於 2017-11-13 04:41 PM 發表 [url=http://computer.discuss.com.hk/redirect.php?goto=findpost&pid=470815668&ptid=27055535][img]http://computer.discuss.com.hk/images/common/back.gif[/img][/url]


原本係有IN-PLACE,但IN PLACE 版本要慢呢個好多。2200ms。

你個邊既電腦幾多秒?

multi-thread 我要用pthread。等老細有指示想揾人做,還是我地部門做個system,先知有無時間搞。 [/quote]
大約用1100ms左右

[[i] 本帖最後由 ncream 於 2017-11-13 04:56 PM 編輯 [/i]]

ncream 2017-11-13 04:56 PM

[quote]原帖由 [i]sswroom[/i] 於 2017-11-13 04:53 PM 發表 [url=http://computer.discuss.com.hk/redirect.php?goto=findpost&pid=470816192&ptid=27055535][img]http://computer.discuss.com.hk/images/common/back.gif[/img][/url]

大約用1100ms左右 [/quote]


又按錯編輯掣。sorry

都同我個部差唔多,睇下寫完multi-thread會有咩表現。

sswroom 2017-11-13 05:00 PM

[quote]原帖由 [i]ncream[/i] 於 2017-11-13 04:56 PM 發表 [url=http://computer.discuss.com.hk/redirect.php?goto=findpost&pid=470816325&ptid=27055535][img]http://computer.discuss.com.hk/images/common/back.gif[/img][/url]



又按錯編輯掣。sorry

都同我個部差唔多,睇下寫完multi-thread會有咩表現。 [/quote]multi-thread可能會較慢......因為pthread會比CreateThread慢~~~

[[i] 本帖最後由 ncream 於 2017-11-13 05:03 PM 編輯 [/i]]

ncream 2017-11-13 05:03 PM

[quote]原帖由 [i]sswroom[/i] 於 2017-11-13 05:00 PM 發表 [url=http://computer.discuss.com.hk/redirect.php?goto=findpost&pid=470816455&ptid=27055535][img]http://computer.discuss.com.hk/images/common/back.gif[/img][/url]
multi-thread可能會較慢......因為pthread會比CreateThread慢~~~ [/quote]

我上一個係用WINDOWS createthread ,但唔知有無類似 pthread mutex,即係LOCK住個記憶體功能呢?

sswroom 2017-11-13 05:07 PM

[quote]原帖由 [i]ncream[/i] 於 2017-11-13 05:03 PM 發表 [url=http://computer.discuss.com.hk/redirect.php?goto=findpost&pid=470816608&ptid=27055535][img]http://computer.discuss.com.hk/images/common/back.gif[/img][/url]


我上一個係用WINDOWS createthread ,但唔知有無類似 pthread mutex,即係LOCK住個記憶體功能呢? [/quote]InitializeCriticalSection, EnterCriticalSection, LeaveCriticalSection, DeleteCriticalSection

ncream 2017-11-13 05:09 PM

[quote]原帖由 [i]sswroom[/i] 於 2017-11-13 05:07 PM 發表 [url=http://computer.discuss.com.hk/redirect.php?goto=findpost&pid=470816748&ptid=27055535][img]http://computer.discuss.com.hk/images/common/back.gif[/img][/url]
InitializeCriticalSection, EnterCriticalSection, LeaveCriticalSection, DeleteCriticalSection [/quote]

thanks。我研究下先。

Susan﹏汪汪 2017-11-13 09:12 PM

[quote]原帖由 [i]sswroom[/i] 於 2017-11-13 05:00 PM 發表 [url=http://www.discuss.com.hk/redirect.php?goto=findpost&pid=470816455&ptid=27055535][img]http://www.discuss.com.hk/images/common/back.gif[/img][/url]
multi-thread可能會較慢......因為pthread會比CreateThread慢~~~ [/quote]
pthread係指同一部電腦的Linux 還是Windows 有pthread

sswroom 2017-11-13 09:25 PM

[quote]原帖由 [i]Susan﹏汪汪[/i] 於 2017-11-13 09:12 PM 發表 [url=http://computer.discuss.com.hk/redirect.php?goto=findpost&pid=470827501&ptid=27055535][img]http://computer.discuss.com.hk/images/common/back.gif[/img][/url]

pthread係指同一部電腦的Linux 還是Windows 有pthread [/quote]他的Testing Platform是Windows, pthread會經多一層CreateThread, 所以一定比直接用CreateThread慢。

P.S. 用NtCreateThreadEx會比CreateThread快, 因為再Call少一層, 不過是Undocumented function, 用起來會比較危險

Susan﹏汪汪 2017-11-13 09:27 PM

[quote]原帖由 [i]sswroom[/i] 於 2017-11-13 09:25 PM 發表 [url=http://www.discuss.com.hk/redirect.php?goto=findpost&pid=470828112&ptid=27055535][img]http://www.discuss.com.hk/images/common/back.gif[/img][/url]
他的Testing Platform是Windows, pthread會經多一層CreateThread, 所以一定比直接用CreateThread慢。

P.S. 用NtCreateThreadEx會比CreateThread快, 因為再Call少一層, 不過是Undocumented function, 用起來會比較 ... [/quote]
Thanks

汪汪搵緊以前同darigold 的對話
汪汪曾經問過一個問題、Windows 系統本身的threading有個無法解決的穩定性問題

Susan﹏汪汪 2017-11-13 09:33 PM

[quote]原帖由 [i]Susan﹏汪汪[/i] 於 2017-11-13 09:27 PM 發表 [url=http://www.discuss.com.hk/redirect.php?goto=findpost&pid=470828211&ptid=27055535][img]http://www.discuss.com.hk/images/common/back.gif[/img][/url]

Thanks

汪汪搵緊以前同darigold 的對話
汪汪曾經問過一個問題、Windows 系統本身的threading有個無法解決的穩定性問題 [/quote]


搵唔返
記憶中只要唔野佢唔會出問題

煙民母親生賤種 2017-11-14 12:18 AM

[quote]原帖由 [i]sswroom[/i] 於 2017-11-13 04:38 PM 發表 [url=http://computer.discuss.com.hk/redirect.php?goto=findpost&pid=470815531&ptid=27055535][img]http://computer.discuss.com.hk/images/common/back.gif[/img][/url]
不是In-place sort? Memory usage好似比實際所需大一倍..... [/quote]根本 in-place 就係速度的代價。要快, 可能唔只大一倍, 係大 3 倍, 5 倍 ... :fst_016:

ncream 2017-11-14 04:30 PM

今日試左multi thread,900ms,同1100ms比較,無咩得益。主要係Global variables slow down program。

[url=https://stackoverflow.com/questions/15216279/global-variables-slow-down-code]https://stackoverflow.com/questions/15216279/global-variables-slow-down-code[/url]

我幾經辛苦揾到原因。因為threads要互相存取同一組memory。CPU會將Global variables移去記憶體,而不在register。拖慢速度。

因此2-thread得益不大,4 thread要多一倍memory,兼快唔起過30%。

所以呢個sorting algorithm 速度上已好接近極限。跟住研究in place 唔好輸太多效能。

我心目中其實重有好多個sorting model,但快唔快真係要實踐過先知。例如有d O(n)未試。

不過我現在面對住交叉點,要做起公司個3-tier system,建立起自己商業軟件起步點(唔肯定將來有無生意),還是外判比人做。自己繼續玩sorting。

[[i] 本帖最後由 ncream 於 2017-11-14 04:39 PM 編輯 [/i]]

Susan﹏汪汪 2017-11-14 04:39 PM

[quote]原帖由 [i]ncream[/i] 於 2017-11-14 04:30 PM 發表 [url=http://www.discuss.com.hk/redirect.php?goto=findpost&pid=470865468&ptid=27055535][img]http://www.discuss.com.hk/images/common/back.gif[/img][/url]
今日試左multi thread,900ms,同1100ms比較,無咩得益。主要係Global variables slow down program。

https://stackoverflow.com/questions/15216279/global-variables-slow-down-code

我幾經辛苦揾到原 ... [/quote]
你公司個project 做左出來之後

你想自己發圍的話有冇本事sale到?

ncream 2017-11-14 04:42 PM

[quote]原帖由 [i]Susan﹏汪汪[/i] 於 2017-11-14 04:39 PM 發表 [url=http://computer.discuss.com.hk/redirect.php?goto=findpost&pid=470865901&ptid=27055535][img]http://computer.discuss.com.hk/images/common/back.gif[/img][/url]

你公司個project 做左出來之後

你想自己發圍的話有冇本事sale到? [/quote]

唔知架,言之尚早。到時要揾sales或自己去sell。希望有人用。不過點都唔會出個message box叫人保養咁賤。

依家首先要寫得體貼過對方。個system平時我只負責佢run到。入面操作我唔在意,依家要逐個function試用。

Susan﹏汪汪 2017-11-14 04:46 PM

[quote]原帖由 [i]ncream[/i] 於 2017-11-14 04:42 PM 發表 [url=http://www.discuss.com.hk/redirect.php?goto=findpost&pid=470866037&ptid=27055535][img]http://www.discuss.com.hk/images/common/back.gif[/img][/url]


唔知架,言之尚早。到時要揾sales或自己去sell。希望有人用。不過點都唔會出個message box叫人保養咁賤。

依家首先要寫得體貼過對方。個system平時我只負責佢run到。入面操作我唔在意,依家要逐個funct ... [/quote]
好多時產品的成功除左產品本身的價值外
更多係有sales 能夠吹到個產品有幾咁好

ncream 2017-11-14 05:02 PM

[quote]原帖由 [i]Susan﹏汪汪[/i] 於 2017-11-14 04:46 PM 發表 [url=http://www.discuss.com.hk/redirect.php?goto=findpost&pid=470866180&ptid=27055535][img]http://www.discuss.com.hk/images/common/back.gif[/img][/url]

好多時產品的成功除左產品本身的價值外
更多係有sales 能夠吹到個產品有幾咁好 [/quote]

所以我都想識返個把口得既sales。

sswroom 2017-11-14 05:28 PM

[quote]原帖由 [i]ncream[/i] 於 2017-11-14 04:30 PM 發表 [url=http://computer.discuss.com.hk/redirect.php?goto=findpost&pid=470865468&ptid=27055535][img]http://computer.discuss.com.hk/images/common/back.gif[/img][/url]
今日試左multi thread,900ms,同1100ms比較,無咩得益。主要係Global variables slow down program。

[url=https://stackoverflow.com/questions/15216279/global-variables-slow-down-code]https://stackoverflow.com/questions/15216279/global-variables-slow-down-code[/url]

我幾經辛苦揾到原 ... [/quote]照計Sorting不會有經常存取的Global Variable........
還有, Multi-Thread不應該用Global Variable, 因為要額外做一些Thread Synchronization

ncream 2017-11-14 05:33 PM

[quote]原帖由 [i]sswroom[/i] 於 2017-11-14 05:28 PM 發表 [url=http://www.discuss.com.hk/redirect.php?goto=findpost&pid=470867962&ptid=27055535][img]http://www.discuss.com.hk/images/common/back.gif[/img][/url]
照計Sorting不會有經常存取的Global Variable........
還有, Multi-Thread不應該用Global Variable, 因為要額外做一些Thread Synchronization [/quote]

Ching。我都覺得唔應該將成億個array變晒global variables。要thread攞到應該有其他方法。我試緊。:)

Susan﹏汪汪 2017-11-14 05:36 PM

[quote]原帖由 [i]ncream[/i] 於 2017-11-14 05:33 PM 發表 [url=http://www.discuss.com.hk/redirect.php?goto=findpost&pid=470868165&ptid=27055535][img]http://www.discuss.com.hk/images/common/back.gif[/img][/url]


Ching。我都覺得唔應該將成億個array變晒global variables。要thread攞到應該有其他方法。我試緊。:) [/quote]
寫個thread pool吧

ncream 2017-11-14 05:37 PM

[quote]原帖由 [i]Susan﹏汪汪[/i] 於 2017-11-14 05:36 PM 發表 [url=http://www.discuss.com.hk/redirect.php?goto=findpost&pid=470868280&ptid=27055535][img]http://www.discuss.com.hk/images/common/back.gif[/img][/url]

寫個thread pool吧 [/quote]

試下。多謝師姐指點。:)
頁: [1]
查看完整版本: 迎來全新sorting algorithm 第二版,再加左小小速,並提供下載。