Sky89 <Sky89@sky68.com>: Aug 08 01:41PM -0400 Hello.... Read this: More philosophy about the essence of science I will ask a question of what is it that we call science ? I think science by "analogy" with morality, is also the fact that both science and morality have to be "RELIABILITY", because as i said morality is RELIABILITY or perfection at best, so since science is RELIABILITY too, so morality too has also the same "essence" that they must be both RELIABILITY or perfection at best, but how to be this reliability ? the first "requirement" of morality and science is that it is "smartness" that has to create morality and that has to create science, that means that it is "smart" people that have to create science and to create morality(that means the laws and politics etc.), and we have to notice that there is more "softer" science and there is "harder" science, i mean for example computer science is somewhat "softer" than hard science that is mathematics or physics, but i think that computer science is still a science because it requires a high level of "smartness", and too "serious" computer programming can be called a science because it requires a high level of "smartness", i give you an example, i am a more serious computer programmer that has invented many scalable algorithms and there implementations, and as you will notice to be able for me to do that, this requires a higher level of smartness, this is why we can also call science my work of inventing many scalable algorithms and there implementations, look for example at what i wrote before to notice that my work of "inventing" many scalable algorithms and there implementations can be called "science" because also it needs a higher level of smartness: About Extreme Scaling in CAE Applications.. I have just read the following about Ansys company: https://en.wikipedia.org/wiki/Ansys Notice that Ansys develops and markets finite element analysis software used to simulate engineering problems. I think that i have thought about this, and i have "invented" a Scalable Parallel C++ Conjugate Gradient Linear System Solver Library, in fact it scales "very" well, my library contains a Scalable Parallel implementation of Conjugate Gradient Dense Linear System Solver library that is NUMA-aware and cache-aware, and it contains also a Scalable Parallel implementation of Conjugate Gradient Sparse Linear System Solver library that is cache-aware. Sparse linear system solvers are ubiquitous in high performance computing (HPC) and often are the most computational intensive parts in scientific computing codes. A few of the many applications relying on sparse linear solvers include fusion energy simulation, space weather simulation, climate modeling, and environmental modeling, and finite element method, and large-scale reservoir simulations to enhance oil recovery by the oil and gas industry. Conjugate Gradient is known to converge to the exact solution in n steps for a matrix of size n, and was historically first seen as a direct method because of this. However, after a while people figured out that it works really well if you just stop the iteration much earlier - often you will get a very good approximation after much fewer than n steps. In fact, we can analyze how fast Conjugate gradient converges. The end result is that Conjugate gradient is used as an iterative method for large linear systems today. You can download my Scalable Parallel C++ Conjugate Gradient Linear System Solver Library from here: https://sites.google.com/site/scalable68/scalable-parallel-c-conjugate-gradient-linear-system-solver-library Read the following about Extreme Scaling in CAE Applications, this is why i have invented my Scalable Parallel C++ Conjugate Gradient Linear System Solver Library that scales very well: https://www.cray.com/blog/extreme-scaling-in-cae-applications/ And read my following writing to also notice it: What is computing for me ? It is first finding an efficient "abstraction" and being able to hide or reduce "complexity", and also Loose coupling is also like hiding or reducing complexity, i am always doing it on my software projects, and to be able to do it more efficiently you have to be more smart, also i am always looking to reduce efficiently the serial part of the parallel program, i am calculating it by CPU cycles and this part of my work is like "assembler", and this to be able to "predict" more correctly scalability, look for example at my Parallel Compression Library or my Parallel archiver here: https://sites.google.com/site/scalable68/parallel-compression-library https://sites.google.com/site/scalable68/parallel-archiver Notice that it says: - It's NUMA-aware and NUMA efficient on windows (it parallelizes the memory reads and writes on NUMA nodes) and - It minimizes efficiently the contention so that it scales well and Now it uses only two threads that do the IO (and they are not contending) so that it reduces at best the contention, so that it scales well. and - Now it supports processor groups on windows, so that it can use more than 64 logical processors and it scales well. And notice that it says the following: I have done a quick calculation of the scalability prediction for my Parallel Compression Library, and i think it's good: it can scale beyond 100X on NUMA systems. The Dynamic Link Libraries for Windows and Dynamic shared libraries for Linux of the compression and decompression algorithms of my Parallel Compression Library and for my Parallel archiver were compiled from C with the optimization level 2 enabled, so they are very fast. So as you noticed i am making my Parallel Compression Library and Parallel archiver efficient. Also computing for me is also finding a good and more efficient way to ensure reliability and stability, and this part of my work has been enhanced more by my "experience" in computing and by implementing more serious softwares. Also computing for me is also making my software portable, this why i said before the following: About portability of my software projects I have thought more, and as you have noticed i have written Intel assembler routines for 32 bit and 64 bit for atomically incrementing and and for atomically CompareExchange etc. so now they are working with x86 AMD and Intel processors for 32 bit and 64 bit, but i will soon make my Delphi and FreePascal and C++ libraries portable to the other CPUs like ARM(for Android) etc. for that i will use the following Delphi methods for Delphi: http://docwiki.embarcadero.com/Libraries/XE8/en/System.SyncObjs.TInterlocked.CompareExchange and http://docwiki.embarcadero.com/Libraries/Tokyo/en/System.SyncObjs.TInterlocked.Exchange And I will use the same functions that you find inside FreePascal, here they are: https://www.freepascal.org/docs-html/rtl/system/interlockedexchange64.html and https://www.freepascal.org/docs-html/rtl/system/interlockedexchange.html and https://www.freepascal.org/docs-html/rtl/system/interlockedcompareexchange.html and https://www.freepascal.org/docs-html/rtl/system/interlockedcompareexchange64.html I will use them inside my scalable lock that is called scalable MLock that i have "invented", so that it will be portable, here it is: https://sites.google.com/site/scalable68/scalable-mlock And when my scalable MLock will become portable on Delphi and FreePascal i will port with it all my other libraries that uses atomically increment and decrement etc., so my libraries will become portable to the other CPUs like ARM for Android etc., so i think you will be happy with my work. Also what is computing for me ? Read the rest to understand better my work: What about the today computing ? You have to know me more.. I am not thinking becoming an expert of "coding".. I am not like that.. Because I am an "inventor", and i have invented many scalable algorithms and there implementations to do better HPC(high performance computing), i am thinking NUMA systems, and i am thinking "scalability" on manycores and multicores and on NUMA systems etc. this is my way of "thinking", and as a proof look at my new scalable reference counting with efficient support for weak references, here it is: https://sites.google.com/site/scalable68/scalable-reference-counting-with-efficient-support-for-weak-references As you have noticed it is "fully" scalable reference counting, so this is HPC(high performance computing) , and i have implemented this scalable algorithm that i have "invented" in Delphi and on the Delphi mode of FreePascal , so that to make Delphi and FreePascal "much" better, and notice with me that you will not find it on C++ or Rust. This is my way of thinking , i am "inventing" scalable algorithms and there implementations. And i said the following: "I think that this Parallel ForEach and ParallelFor are like futulities, because they don't bring "enough" high level abstraction to consider them interesting, because i think my Threadpool with priorities that scales very well is capable of easily emulating Parallel ForEach with "priorities" and ParallelFor with "priorities" that scale very well, so no need to implement Parallel ForEach or Parallel For." But to be "nicer", i think i will soon implement both Parallel ForEach with "priorities" that scales very well and ParallelFor with "priorities" that scales very well using my Threadpool with priorities that scales very well, and they will be integrated as methods with my Threadpool with priorities that scales very well, so that you will be happy. So i will ask you ? where will you find my Threadpool with priorities that scales very well? and where you will find my Parallel ForEach and Parallel For with priorities that scales very well ? You will not find them on C++ and you will not find them on Rust, because i have "invented" them, because i am an "inventor", and this is my way of thinking. Here is my powerful Threadpool with priorities that scales very well, read about it and download it from here: https://sites.google.com/site/scalable68/an-efficient-threadpool-engine-with-priorities-that-scales-very-well It is a very powerful Threadpool, because: More precision about my efficient Threadpool that scales very well, my Threadpool is much more scalable than the one of Microsoft, in the workers side i am using scalable counting networks to distribute on the many queues or stacks, so it is scalable on the workers side, on the consumers side i am also using lock striping to be able to scale very well, so it is scalable on those parts, on the other part that is work stealing, i am using scalable counting networks, so globally it scales very well, and since work stealing is "rare" so i think that my efficient Threadpool that scales very well is really powerful, and it is much more optimized and the scalable counting networks eliminate false sharing, and it works with Windows and Linux. Read the rest: Read the rest: You have to understand my work.. I have invented many scalable algorithms and there implementations, here is some of them that i have "invented": 1- Scalable Threadpools that are powerful 2- Scalable RWLocks of different sorts. 3- Scalable reference counting with efficient support for weak references 4- Scalable FIFO queues that are node-based and array-based. 5- My Scalable Varfiler 6- Scalable Parallel implementation of Conjugate Gradient Dense Linear System Solver library that is NUMA-aware and cache-aware, and also a Scalable Parallel implementation of Conjugate Gradient Sparse Linear System Solver library that is cache-aware. 7- Scalable MLock that is a scalable Lock. 8- Scalable SeqlockX And there is also "many" other scalable algorithms that i have "invented". You can find some of my scalable algorithms and there implementations in Delphi and FreePascal and C++ on my website here: https://sites.google.com/site/scalable68/ What i am doing by "inventing" many scalable algorithms and there implementations, is wanting to make "Delphi" much better and making FreePascal on the "Delphi" mode much better, my scalable algorithms and there implementations are like HPC(high performance computing, and as you have noticed i said also: You will ask why have i invented many scalable algorithms and there implementations? because also my work will permit us also to "revolutionise" science and technology because it is HPC(high performance computing), this is why i will also sell some of my scalable algorithms and there implementations to companies such as Google or Microsoft or Embarcadero. Also HPC has revolutionised the way science is performed. Supercomputing is needed for processing sophisticated computational models able to simulate the cellular structure and functionalities of the brain. This should enable us to better understand how our brain works and how we can cope with diseases such as those linked to ageing and to understand more about HPC, read more here: https://ec.europa.eu/digital-single-market/en/blog/why-do-supercomputers-matter-your-everyday-life So i will "sell" some of my scalable algorithms and there implementations to Google or to Microsoft or to Embarcadero. I will also enhance my Parallel archiver and my Parallel compression Library that are powerful and that work with both C++Builder and Delphi and to perhaps sell them to Embarcadero that sells Delphi and C++Builder. Also I will implement soon a "scalable" Parallel For and a Parallel ForEach.. This why i said before that: "I think that this Parallel ForEach and ParallelFor are like futulities, because they don't bring "enough" high level abstraction to consider them interesting, because i think my Threadpool with priorities that scales very well is capable of easily emulating Parallel ForEach with "priorities" and ParallelFor with "priorities" that scale very well, so no need to implement Parallel ForEach or Parallel For." But to be "nicer", i think i will soon implement both Parallel ForEach with "priorities" that scales very well and ParallelFor with "priorities" that scales very well using my Threadpool with priorities that scales very well, and they will be integrated as methods with my Threadpool with priorities that scales very well, so that you will be happy. And my next step soon is also to make my Delphi and FreePascal and C++ Libraries portable to other CPUs like ARM etc. because currently they work on x86 AMD and Intel CPUs. And my next step soon is also to make my "scalable" RWLocks NUMA-aware and efficient on NUMA. This is some parts of my everyday computing.. And here is my proof that morality is RELIABILITY perfection at best, read all my following thoughts to understand it: About politics.. You have seen me writing about morality, and hope you have understood my writing.. What do you think is capitalism ? Capitalism is not as neo-nazism that starts from the idea that it has to be european whites to be "perfection" and it wants to be european whites, because this is a contradiction ! because perfection of today needs "imperfections" of for example being more "weak" or "less" beautiful to be able to be perfection ! this is the contradiction of nazism and neo-nazism ! nazism and neo-nazism is not understanding it correctly ! perfection of today is also the weak that needs the strong and the strong that needs the weak ! and perfection of today has to know how to accept some level of imperfections to be able to be the right perfection ! this is what is not understanding |
Sky89 <Sky89@sky68.com>: Aug 08 10:30AM -0400 Hello, Read this: How Can We Promote Cooperation in an Uncooperative Society? Read more here: https://blogs.scientificamerican.com/observations/how-can-we-promote-cooperation-in-an-uncooperative-society/ 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