🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

My project takes too long to program

Started by
91 comments, last by JoeJ 3 years, 2 months ago

Looks interesting.

I would produce HSLS offline. So speed is not a problem at all. And initially it will be only for me, so it will be ugly code. Pretty fast to develop, compared to having to learn tons of documentations.

I can make the parser read my C# code and generate parallel workload table. And then this table can go everywhere - GPU, Multicore CPU, SIMD, FPGA code text file(whatever file extension you use to hold the code for the FPGA, i don't know it, never programmed for FGPA, it could be generated). More complicated than that but i already picture some ideas.

Parallel workload table → shader.hlsl
→ SIMDClass.cpp
→ FTPClass.cs

Something like that.

To handle simple shaders is easy. The examples they give the most often of summing up two arrays are easy to program. And once started with adding two arrays, i will grow more complex functionality from there on.

Trying to not sell my soul to unity licenses now. It feels less free than Blender. Free in a scary way. At least for a total newcomer. I think if you divorced in the last 12 months they could ask you to pay.

Advertisement

https://github.com/Sergio0694/ComputeSharp

Still active, lots of Stars. Free and Open source. Exactly what you need? Guess rolls as good as reinventing it ; )

NikiTo said:
Trying to not sell my soul to unity licenses now.

There's Godot as well, worth a look. But i would not worry about your soul.

However, Godot is tiny. Just download a folder and use. No install even. But IDK if supports C#.

JoeJ said:
Guess rolls as good as reinventing it ; )

But it is probably painful to start using it - manuals, dependencies, packages, build errors. "Oh your keyboard has leds, it doesn't install on a PC with a keyboard with leds"…. When i tried to install SM6, it was a nightmare and a left it.

I found a tutorial for TensorFlow and this here -
https://unity.com/products/machine-learning-agents

Worth to install unity to can get these setups with spiders already running. Wonder if it will ask for my soul to get that. It is just not clear like with blender - “it will be free forever for any use”

(edit: ok, here we go….. “The ML-Agents Toolkit only supports the models created with our trainers. Model loading expects certain conventions for constants and tensor names. While it is possible to construct a model that follows these conventions, we don't provide any additional help for this.” )

NikiTo said:
But

Try before you cry. Do me at least that favor. If you do it yourself, it takes one month longer until you realize: human > machine ; )

AFAIK, Unity is free if you do not sell more than X. But there was some scandal in the past when they requested proof on that from small devs. However, giving it a try is zero risk. If you like it, read terms before you decide to use it seriously.

You know 1 month == 2 months

Tensorflow works with NV…

Ok, enough time lost. This month will do -

making a transpiler for HLSL for the future shaders
finishing the current shader, not much left
improving my NN API in C#. I could use the transpiller to add to it GPU support
making some hexapod agent in Blender
setting up some playground in Unity for the hexapod

NikiTo said:
Tensorflow works with NV…

ugh… it does work with AMD: https://www.amd.com/de/graphics/servers-solutions-rocm-ml

But ROCm does not work on Windows, AFAIK, some OS barriers on MS side…

So you'd need to use Linux to use ROCm.

This would also enable AMDs ‘imitation’ of Cuda and other of their native compute stuff, but no idea.

I'll hold back my concerns about controlling a 12 joints robot being harder to get started than controlling just moving dots…

JoeJ said:
ugh… it does work with AMD:

With hacking. I have the feeling TF works with NV and it would prefer me to have an NV GU installed than hacking it to work for AMD. I have the feeling TF would not give 100% of itself on AMD.

Learning new things is time consuming and in my own experience, “learning to learn” proven to be not productive.

JoeJ said:
some OS barriers on MS side…

So MS is guilty for everything again. It is not expansion and attempt for monopoly of NV, it is fault of MS. It is not NV, it is MS. Sarcasm - “Billy wants to use hollywood-scifi-movie-level nano tech to install windows on the left lobe of our brains in order to control us all and make us………….. install windows 10” - sarcasm.

JoeJ said:
I'll hold back my concerns about controlling a 12 joints robot being harder to get started than controlling just moving dots…

The more complicated the problem, the happier is the AI.

It would be hard to show you a demo moving a dot and tell you - this is AI. You could always accuse me, and you would accuse me probably, that it is just a few lines of straight code. The more complicated the task, the more convincing the AI-demo(and an hexapod would get more likes in social media than a dot, and likes sell. A demo of an hexapod moving on Mars - it would give me self-promotional superpowers).

NikiTo said:
With hacking. I have the feeling TF works with NV and it would prefer me to have an NV GU installed than hacking it to work for AMD. I have the feeling TF would not give 100% of itself on AMD.

Your feeling is always more to trust than real world truth. (?)

NikiTo said:
So MS is guilty for everything again.

I did not imply to say that. I did follow related discussion of others, people told AMD tried to make ROCm work on Windows, but some kind of OS limitation prevents it. They may try another option, but there is no announcement ROCm support is coming.

My personal opinion: AMD Often does not care enough. Examples: Abandoning OpenCL although they have great performance, not exposing RX6000 RT flexibility with Vulkan Extensions, no ROCm support on Windows. Just, personal opinions don't matter.

NikiTo said:
The more complicated the problem, the happier is the AI.

But it may be more complicated to you to set up and learn.
When i learn something new, i learn it from ground up. Starting with the simplest example possible. If i start somewhere in the middle, i may miss some important basics. Simple logic.

But may not apply here. Try it and have fun. Cats and dogs won't disappear because of that.

JoeJ said:
I did not imply to say that.

Ok, then. My bad.

JoeJ said:
My personal opinion:

I feel less positive about AMD than ago too. NV just “cares more”. Somebody could say that NV is not “carrying more” but it is “evil corporation trying to monopolize the whole world”. It depends of the view of a person and depends of his own hidden agendas.

JoeJ said:
But it may be more complicated to you to set up and learn. When i learn something new, i learn it from ground up. Starting with the simplest example possible. If i start somewhere in the middle, i may miss some important basics. Simple logic.

You are right. I meant using hexapod for the demo. I think in the beginning i could try dots around, but would not share it. An hexapod is worth to share in my opinion. Still not enough to prove, but much closer to a proof.

NikiTo - shares a screen recording of AI moving a dot.
JoeJ - i don't believe it. You could have programmed a simple piece of code. I can do that.

NikiTo - shares a screen recording of a hexapod moving in a labyrinth.
JoeJ - I don't believe it, you could have animated it all in Blender.

I don't immediately blame you. Such is life. Your criticism prepared me for the real world. Now i think like this - “If i can not prove to JoeJ something, how can i prove it to some other stranger, to the point he will take his beloved money out of his beloved pocket and give it to me?”

When you show to the client that you solved some complicated problem of big data, you prove to him it was AI. Because it is unrealistic for somebody to have done that manually in order to cheat.

Like that Russian AI contest - they don't even wanted to peek at your code. They do';t even asked what hardware or software you used. The sole act of finishing to process the big data in-time is a proof you have an AI on your side.

NikiTo - “here, i have an app, you insert inside any DNA sequence and it lists you all the diseases of this person.”
Pharma company - "show me your AI, pls!"

Because it is more realistic that you have rather created an AI, than you to know the rules DNA follows and you to coded that rules inside a traditional app. Most probably it is AI with its black box.

Big data is important.

Even philosophically speaking - the bigger the data, the easier to define intelligence.

This piece of code is very intelligent -

if (fat) {
getSlim();
} else {
getFat();
}

It solves a problem. It solves a task. Hardly i can impress you with a single if-else, right?

And i love hexapods.

This topic is closed to new replies.

Advertisement