Sunday, November 27, 2016

Digest for comp.programming.threads@googlegroups.com - 14 updates in 8 topics

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: