- cmsg cancel <o1cuu7$mjv$1@dont-email.me> - 7 Updates
- Again about programming... - 1 Update
- What is programming ? - 1 Update
- Read again... - 1 Update
- What have i learned in Parallel programming during all my years of learning ? - 1 Update
- Read again, i correct... - 1 Update
- I am coming from a long road - 1 Update
- Parallel archiver 3.85 is here.. - 1 Update
bleachbot <bleachbot@httrack.com>: Nov 26 10:32PM +0100 |
bleachbot <bleachbot@httrack.com>: Nov 26 11:01PM +0100 |
bleachbot <bleachbot@httrack.com>: Nov 26 11:22PM +0100 |
bleachbot <bleachbot@httrack.com>: Nov 27 03:17AM +0100 |
bleachbot <bleachbot@httrack.com>: Nov 27 03:28AM +0100 |
bleachbot <bleachbot@httrack.com>: Nov 27 03:55AM +0100 |
bleachbot <bleachbot@httrack.com>: Nov 27 04:40AM +0100 |
Ramine <ramine@1.1>: Nov 26 09:41PM -0500 Hello..... Again about programming... If you have read my previous post, that we are always learning in programming how to scale to a much bigger and complex problem.. and by doing it, we are structuring ,like in mathematical logic, our thinking and reasonning, also by using technics of programming like how to calculate the time complexity and space complexity etc. Take for example reusability, intelligence and scalability are inherent also to reusability in programming, if you reuse smartly you will be able to scale fast and to become smarter, this is one way to prove my assertion above. Thank you, Amine Moulay Ramdane. |
Ramine <ramine@1.1>: Nov 26 08:55PM -0500 Hello, What is programming ? I think the very important goal of programming is to make us scale. Take for example mathematical logic, you will learn for example in mathematical logic that: p -> q is equivalent to: not(q) -> not(p) because it is infered mathematically from: p -> q is equivalent to: not(p) or q So what is exactly we are doing with this mathematical logic? It permits us to scale, that means it permit us to make our reasonning more complex by formalizing it with mathematical logic. Programming is the same: We are always learning in programming how to scale to a much bigger and complex problem.. and by doing it, we are structuring ,like in mathematical logic, our thinking and reasonning, also by using technics of programming like how to calculate the time complexity and space complexity.. Thank you, Amine Moulay Ramdane. |
Ramine <ramine@1.1>: Nov 26 08:29PM -0500 Hello, What have i learned in Parallel programming during all my years of learning ? There is an important factor in programming that is called scalability, and that's where i have specialized in parallel programming, for example you have the criterion that is called maintainability, and this factor called maintainability is in relation with scalability, because if you want to make your code more maintainable you have to learn the guidelines and the programming patterns to know how to scale more on the the criterion of the cost of the time that you need to maintain your program, and this is what you are learning on this C++ group also with templates etc., reusability is another criterion that is in relation with scalability, because what you are trying to do is make your classes and functions and programs reusable so that you can scale on productivity for example.. portability is also another criterion that is in relation with scalability, because when your code is portable you will be able to run your code on more operating systems and hardwares and that's scalability also.. on parallel programming that's the same, you want your code and program to be scalable. So here is what i have learned more, and how i have made my parallel programming more scalable: Take for example my efficient Threadpool engine with priorities that scales well, here it is: https://sites.google.com/site/aminer68/an-efficient-threadpool-engine-with-priorities-that-scales-well So if you take a look at it, here is that i have made to make it scale well: 1- minimize at best the cache-lines transfers, by using multiple queues or multiple stacks, and by using lock-striping and by minimizing the the cache-line transfers inside the queues or stacks by using a better algorithm. 2- It uses work-stealing to be more efficient. 3- It can use processor groups on windows, so that it can use more than 64 logical processors , so that it scales well. 4- It's NUMA-aware and NUMA efficient. That's how i have learned more to make my programs more scalable. Thank you, Amine Moulay Ramdane. |
Ramine <ramine@1.1>: Nov 26 08:17PM -0500 Hello, What have i learned in Parallel programming during all my years of learning ? There is an important factor in programming that is called scalability, and that's were i have specialized in parallel programming, for example you have the criterion that is called maintainability, and this factor called maintainability is in relation with scalability, because if you want to make your code more maintainable you have to learn the guidelines and the programming patterns to know how to scale more on the the criterion of the cost of the time that you need to maintain your program, and this is what you are learning on this C++ group also with templates etc., reusability is another criterion that is in relation with scalability, because what you are trying to do is make your classes and functions and programs reusable so that you can scale on productivity for example.. portability is also another criterion that is in relation with scalability, because when your code is portable you will be able to run your code on more operating systems and hardwares and that's scalability also.. on parallel programming that's the same, you want your code and program to be scalable. So here is what i have learned more, and how i have made my parallel programming more scalable: Take for example my efficient Threadpool engine with priorities that scales well, here it is: https://sites.google.com/site/aminer68/an-efficient-threadpool-engine-with-priorities-that-scales-well So if you take a look at it, here is that i have made to make it scale well: 1- minimize at best the cache-lines transfers, by using multiple queues or multiple stacks, and by using lock-striping and by minimizing the the cache-line transfers inside the queues or stacks by using a better algorithm. 2- It uses work-stealing to be more efficient. 3- It can use processor groups on windows, so that it can use more than 64 logical processors , so that it scales well. 4- It's NUMA-aware and NUMA efficient. That's how i have learned more to make my programs more scalable. Thank you, Amine Moulay Ramdane. |
Ramine <ramine@1.1>: Nov 26 04:22PM -0500 Hello....... I am coming from a long road of software development, i have specialized more on parallel computing and it has allowed me to bring you also my Parallel archiver, now i am implementing a GUI interface to a system that uses my Parallel Archiver, this system doesn't look as zip or 7Zip , because they use an innefficient way so when you delete a file from a big archive it will take too much time, so the delete function doesn't scale on 7Zip or Zip, so i am actually implementing a new system as a command line and GUI that is more efficient than 7Zip or Zip in many ways and that works on windows.. the GUI interface will support Drag and Drop and passing file from the Clipboard and it will support 3 compression algorithms: Zstd and LZ4 and LZMA, so stay tuned i am actually implementing it. Thank you, Amine Moulay Ramdane. |
Ramine <ramine@1.1>: Nov 26 04:02PM -0500 Hello, I am coming from a long road of software devellopement, i have specialized more on parallel computing and it has allowed me to bring you also my Parallel archiver, now i am implementing a GUI interface to a system that uses my Parallel Archiver, this system doesn't look as zip or 7Zip , because they use an innefficient way so when you delete a file from a big archive it will take too much time, so the delete function doesn't scale on 7Zip or Zip, so i am actually implementing a new system as a command line and GUI that is more efficient than 7Zip or Zip in many ways and that works on windows.. the GUI interface will support Drag and Drop and passing file from the Clipboard and it will support 3 compression algorithm: Zstd and LZ4 and LZMA, so stay tuned i am actually implementing it. Thank you, Amine Moulay Ramdane. |
Ramine <ramine@1.1>: Nov 26 03:33PM -0500 Hello.. Parallel archiver 3.85 is here.. I have changed the size of the queue of my Threadpool, that is expressed in power of 2, to round(log2(nbrprocessors))*2, so it has allowed my Parallel Archiver to scales well, and now even my ParallelLZMA is scaling well.. And now it supports processor groups on windows, so that it can use more than 64 logical processors and it scales well. And it's NUMA-aware and NUMA efficient. And now my Parallel Archiver is really complete and more stable now and really fast and it scales well, hope you will be happy with it. You can download and read about my Parallel Archiver 3.85 from: https://sites.google.com/site/aminer68/parallel-archiver Thank you, Amine Moulay Ramdane. |
You received this digest because you're subscribed to updates for this group. You can change your settings on the group membership page. To unsubscribe from this group and stop receiving emails from it send an email to comp.programming.threads+unsubscribe@googlegroups.com. |
No comments:
Post a Comment