Rawya Elmahi Gobara Saliem2022-08-282022-08-282019-12http://hdl.handle.net/123456789/17326Thesis submitted in partial fulfillment of the academic requirements for the degree of PhD in Information TechnologyAbstract High-performance computing has become important in this era, especially for applications that need high-speed and more accurate processing, such as meteorological research, climate research, and digital signal processing. In light of this development, it was necessary to develop the computing environment.Therefore, this research aims to develop Dijkstra's algorithmin the open source program (Path computation element) and apply the concepts of parallel and hierarchical computing using map reduction. In order to reach the shortest path in the network at the lowest cost and the highest speed of implementation while reducing the risk of failure, it is worth mentioning that Dijkstra's algorithm is dominant in solving the shortest path problems between all the nodes in the network.The researcher used the analytical and descriptive methodology to find the shortest path in the network through the hierarchical and parallel Dijkstra algorithm. 200 nodes and 36 processors as a sample implementation. The results of the researcher in the hierarchy were that the percentage of the total performance of the first 100 nodes is 430 seconds, while the percentage of the total performance of the nodes is 920 seconds, and the uptime decreases with the increase in the number of cores, the speed increases with the increase in the number of cores until it reaches the value Then the speed decreases, the cost decreases when the operating time decreases.In parallel, the percentage of total performance for the first 100 nodes is 55 seconds, and the percentage of total performance for the first 100 nodes is 100 seconds. The running time decreases in parallel with the increase in the number of nodes when all the cores are in the same node. The researcher also reached recommendations, the most important of which is the use of Dijkstra's algorithm in large and medium schemes. When the network structure is hierarchical, the Dijkstra hierarchical algorithm is used. When the source node is one layer and the destination node is in another layer, searching for the shortest path will cover not only each layer but also the short paths of the interlayer. This algorithm is based on Dijkstra's parallel algorithm, where it is divided into parallel groups in any topological layers, and each hierarchical layer will form another layer of groups. Dijkstra's algorithm does not handle negative edges. The researcher recommends using the Dijkstra algorithm using both parallel and hierarchical methods to complete the process of finding the shortest path for all nodes in the network.اﻟﻤﺴﺘﺨﻠﺺ اﻟﺤﻮﺳﺒﺔ ﻋﺎﻟﯿﺔ اﻻداء اﺻﺒﺤﺖ ﻣﮭﻤﺔ ﻓﻲ ھﺬا اﻟﻌﺼﺮ ،ﺧﺎﺻﺔ اﻟﺘﻄﺒﯿﻘﺎت اﻟﺘﻲ ﺗﺤﺘﺎج اﻟﻲ ﻣﻌﺎﻟﺠﺔ ﺑﺴﺮﻋﺔ ﻋﺎﻟﯿﺔ واﻛﺜﺮ دﻗﺔ ،ﻣﺜﻞ اﺑﺤﺎث اﻻرﺻﺎد اﻟﺠﻮي ،واﺑﺤﺎث اﻟﻤﻨﺎخ ،وﻣﻌﺎﻟﺠﺔ اﻻﺷﺎرات اﻟﺮﻗﻤﯿﺔ .وﻓﻲ ظﻞ ھﺬا اﻟﺘﻄﻮر ﻛﺎن ﻻﺑﺪ ﻣﻦ ﺗﻄﻮﯾﺮ ﺑﯿﺌﺔ اﻟﺤﻮﺳﺒﺔ. ﻟﺬا ﯾﮭﺪف ھﺬا اﻟﺒﺤﺚ اﻟﻲ ﺗﻄﻮﯾﺮ ﺧﻮارزﻣﯿﺔ دﯾﻜﺴﺘﺮا ﻓﻲ اﻟﺒﺮﻧﺎﻣﺞ ﻣﻔﺘﻮح اﻟﻤﺘﻮازﯾﺔ واﻟﮭﺮﻣﯿﺔ ﺑﺎﺳﺘﺨﺪام ﺗﻘﻠﯿﻞ ) element computation Path ( وﺗﻄﺒﯿﻖ ﻣﻔﺎھﯿﻢ اﻟﺤﻮﺳﺒﺔ اﻟﻤﺼﺪر اﻟﺨﺮﯾﻄﺔ . وذﻟﻚ ﻟﻠﻮﺻﻮل اﻟﻲ اﻗﺼﺮ ﻣﺴﺎر ﻓﻲ اﻟﺸﺒﻜﺔ ﺑﺎﻗﻞ ﺗﻜﻠﻔﺔ واﻋﻠﻲ ﺳﺮﻋﺔ ﻟﻠﺘﻨﻔﯿﺬ ﻣﻊ ﺗﻘﻠﯿﻞ ﻣﺨﺎطﺮ اﻟﻔﺸﻞ ،واﻟﺠﺪﯾﺮ ﺑﺎﻟﺰﻛﺮ ان ﺧﻮارزﻣﯿﺔ دﯾﻜﺴﺘﺮا ﻣﮭﯿﻤﻨﺔ ﻋﻠﻲ ﺣﻞ ﻣﺸﺎﻛﻞ أﻗﺼﺮ اﻟﻄﺮق ﺑﯿﻦ ﻛﻞ اﻟﻌﻘﺪ اﻟﻤﻮﺟﻮدة ﻓﻲ اﻟﺸﺒﻜﺔ .اﺳﺘﺨﺪم اﻟﺒﺎﺣﺚ اﻟﻤﻨﮭﺞ اﻟﺘﺤﻠﯿﻠﻲ واﻟﻮﺻﻔﻲ ﻛﻄﺮﯾﻘﺔ ﻋﻠﻤﯿﺔ ﻓﻲ ھﺬا اﻟﺒﺤﺚ، ﻟﻠﻌﺜﻮر ﻋﻠﻲ اﻗﺼﺮ ﻣﺴﺎر ﻓﻲ اﻟﺸﺒﻜﺔ ﻋﻦ طﺮﯾﻖ ﺧﻮارزﻣﯿﺔ دﯾﻜﺴﺘﺮا اﻟﮭﺮﻣﯿﺔ واﻟﻤﺘﻮازﯾﺔ وﺗﻢ ذﻟﻚ ﻋﻦ طﺮﯾﻖ ﺗﺼﻤﯿﻢ ﺑﺮﻧﺎﻣﺞ ﺑﻠﻐﺔ اﻟﺒﺎﯾﺜﻮن ، ﻟﻠﺒﺤﺚ ﻋﻦ اﻗﺼﺮ ﻣﺴﺎرﻓﻲ اﻟﺸﺒﻜﺔ ﻋﺒﺮ اﻟﺘﺴﻠﺴﻞ اﻟﻤﺘﻮازي واﻟﮭﺮﻣﻲ وﯾﻘﻮم ﺑﺤﺴﺎب اﻟﺰﻣﻦ واﻟﺘﻜﻠﻔﺔ ﻣﻌﺎﻟﺞ ﻛﻌﯿﻨﺔ ﻟﻠﺘﻨﻔﯿﺬ.اﻟﻨﺘﺎﺋﺞ اﻟﺘﻲ ﺗﻮﺻﻞ اﻟﯿﮭﺎ اﻟﺒﺎﺣﺚ ﻓﻲ ﻋﻘﺪة و36 200 واﻟﺴﺮﻋﺔ ، اﺳﺘﺨﺪام اﻟﺒﺎﺣﺚ اﻟﺘﺴﻠﺴﻞ اﻟﮭﺮﻣﻲ ﻛﺎﻧﺖ اﻟﻨﺴﺒﺔ اﻟﻤﺌﻮﯾﺔ ﻟﻼداء اﻟﻜﻠﻲ ﻻول 100 ﻋﻘﺪة ھﻲ 430 ﺛﺎﻧﯿﺔ ،ﻓﻲ ﺣﯿﻦ ان اﻟﻨﺴﺒﺔ اﻟﻤﺌﻮﯾﺔ ﻟﻼداء اﻟﻜﻠﻲ ﻟﻠﻌﻘﺪ ھﻲ 920 ﺛﺎﻧﯿﺔ ، ﯾﺘﻨﺎﻗﺺ وﻗﺖ اﻟﺘﺸﻐﯿﻞ ﻣﻊ ذﯾﺎدة ﻋﺪد اﻟﻨﻮي ،ﺗﺬداد اﻟﺴﺮﻋﺔ ﻣﻊ ذﯾﺎدة ﻋﺪد اﻟﻨﻮي ﺣﺘﻲ ﺗﺼﻞ اﻟﻲ اﻟﻘﯿﻤﮫ اﻟﻘﺼﻮي ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﺗﺘﻨﺎﻗﺺ اﻟﺴﺮﻋﺔ ،ﺗﻘﻞ اﻟﺘﻜﻠﻔﺔ ﻋﻨﺪﻣﺎ ﯾﻘﻞ زﻣﻦ اﻟﺘﺸﻐﯿﻞ . وﻓﻲ اﻟﺘﻮازي اﻟﻨﺴﺒﺔ اﻟﻤﺌﻮﯾﺔ ﻟﻼداء اﻟﻜﻠﻲ ﻻول 100 ﻋﻘﺪة ھﻲ 55 ﺛﺎﻧﯿﺔ ، اﻟﻨﺴﺒﺔ اﻟﻤﺌﻮﯾﺔ ﻟﻼداء اﻟﻜﻠﻲ ﻓﻲ اﻟﻌﻘﺪ ھﻲ ﯾﺘﻨﺎﻗﺺ وﻗﺖ اﻟﺘﺸﻐﯿﻞ ﻓﻲ اﻟﺘﻮازي ﻣﻊ ذﯾﺎدة ﻋﺪد اﻟﻌﻘﺪ ﻋﻨﺪﻣﺎ ﺗﻜﻮن ﺟﻤﯿﻊ اﻟﻨﻮي ﻓﻲ ﻧﻔﺲ ﺛﺎﻧﯿﺔ . 100 اﻟﻌﻘﺪة،اذا ﺗﻢ اﺳﺘﺨﺪام اﻟﻨﻮي ﻣﻦ ﻋﻘﺪ ﻣﺨﺘﻠﻔﺔ ﯾﺬاد وﻗﺖ اﻟﺘﺸﻐﯿﻞ ﺑﺸﻜﻞ اﻛﺒﺮ ، اﻣﺎ ﻣﻦ ﻧﺎﺣﯿﺔ اﻟﺴﺮﻋﺔ ﺗﺬداد اذا .ﻛﺬﻟﻚ ﺗﻮﺻﻞ .ﻋﻨﺪﻣﺎ ﯾﻜﻮن ﻛﺎن اﻟﻨﻮي ﻣﻦ ﻧﻔﺲ اﻟﻌﻘﺪة ،واﻟﻌﻜﺲ ﺗﺘﻨﺎﻗﺺ اﻟﺴﺮﻋﺔ ﻋﻨﺪ اﺳﺘﺨﺪام اﻟﻨﻮي ﻣﻦ ﻋﻘﺪ ﻣﺨﺘﻠﻔﺔ اﻟﺒﺎﺣﺚ اﻟﻲ ﺗﻮﺻﯿﺎت اھﻤﮭﺎ اﺳﺘﺨﺪام ﺧﻮارزﻣﯿﺔ دﯾﻜﺴﺘﺮا ﻓﻲ اﻟﻤﺨﻄﻄﺎت اﻟﻜﺒﯿﺮة واﻟﻤﺘﻮﺳﻄﺔ ھﯿﻜﻞ اﻟﺸﺒﻜﺔ ھﺮﻣﯿًﺎ ﯾﺘﻢ اﺳﺘﺨﺪام ﺧﻮارزﻣﯿﺔ دﯾﻜﺴﺘﺮا اﻟﮭﺮﻣﯿﺔ .ﻋﻨﺪﻣﺎ ﺗﻜﻮن اﻟﻌﻘﺪة اﻟﻤﺼﺪر طﺒﻘﺔ واﺣﺪة وﺗﻜﻮن اﻟﻌﻘﺪة اﻟﻮﺟﮭﺔ ﻓﻲ طﺒﻘﺔ أﺧﺮى ، ﻓﺈن اﻟﺒﺤﺚ ﻋﻦ أﻗﺼﺮ ﻣﺴﺎر ﻟﻦ ﯾﻐﻄﻲ ﻓﻘﻂ ﻛﻞ طﺒﻘﺔ وﻟﻜﻦ أﯾﻀًﺎ اﻟﻤﺴﺎرات ﺣﯿﺚ ﺗﻘﺴﻢ اﻟﻲ اﻟﻤﺘﻮازﯾﺔ Dijkstra .ﺗﻌﺘﻤﺪ ھﺬه اﻟﺨﻮارزﻣﯿﺔ ﻋﻠﻰ ﺧﻮارزﻣﯿﺔ اﻟﻘﺼﯿﺮة ﻟﻠﻄﺒﻘﺔ اﻟﺒﯿﻨﯿﺔ ﻣﺠﻤﻮﻋﺎت ﻣﺘﻮازﯾﺔ ﻓﻲ أي طﺒﻘﺎت طﻮﺑﻮﻟﻮﺟﯿﺔ وﻛﺬﻟﻚ ﺳﺘﺸﻜﻞ ﻛﻞ طﺒﻘﺔ ھﺮﻣﯿﺔ طﺒﻘﺔ أﺧﺮى ﻣﻦ اﻟﻤﺠﻤﻮﻋﺎت . ﺧﻮارزﻣﯿﺔ دﯾﻜﺴﺘﺮا ﻻ ﺗﺘﻌﺎﻣﻞ ﻣﻊ اﻟﺤﻮاف اﻟﺴﺎﻟﺒﺔ . اوﺻﻲ ﺑﺎﺳﺘﺨﺪام ﺧﻮارزﻣﯿﺔ اﻟﺪﯾﻜﺴﺘﺮا ﺑﺎﻟﻄﺮﯾﻘﺘﯿﻦ اﻟﻤﺘﻮازﯾﺔ واﻟﮭﺮﻣﯿﺔ ﻟﺘﻜﻤﻠﺔ ﻋﻤﻠﯿﺔ اﻟﺒﺤﺚ ﻋﻦ اﻗﺼﺮ ﻣﺴﺎر ﻟﺠﻤﯿﻊ اﻟﻌﻘﺪ ﻓﻲ اﻟﺸﺒﻜﺔ .Path ComputationPath Computation Element Model on the Super ComputerThesis