Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - Ryuu

Pages: [1]
News / Legacy version will no longer be provided
« on: 2018-01-08, 21:23:58 »
For many years now, we've been enabling compatibility with much older processors through the inclusion of the Legacy version of Corona Renderer. This hasn't come without impact, however - the prime example is that it takes more development and build time to develop two parallel versions.

Improvements in processor technology have moved very quickly, and we've been watching our user statistics over time. Now 98.24% of all installations are on machines capable of running the Full Speed version. We feel that this is the right time to discontinue the Legacy version, allowing the vast majority of our users to benefit from faster development and build times, and a smaller size for the installer.

We'll begin by removing the Legacy version from future Daily Builds from this date onward, and then from the final releases after that. Note that we will continue to support running the Licensing Server on legacy CPUs, but this will be only the Licensing Server (the computer won't be able to be used for rendering.)

This change will only affect a very small number of users - those with an Intel processor that is more than 10 years old, for example - and of course the Legacy option remains in place for all versions up to and including 1.7 Hotfix 2. We apologize to those of you who will be affected and hope you understand that we cannot continue to support older technology indefinitely, when that support does have an impact on develpment and build times for all our users.

[Max] General Discussion / CPU FAQ
« on: 2017-07-04, 17:30:36 »
What is a thread?
In the context of computing, a thread is a piece of executable code with its own state. Apart from maintaining its own state (private data), each thread can also access global data shared by all threads belonging to the same application (process).
For example in Corona we launch as many threads as you have CPU cores and instruct the OS to run each thread on a different CPU core. This way all the threads run in parallel at once. The private data of the thread is the ray this thread is currently tracing, while the shared data is the scene, textures, etc.
What exactly does 100% usage in Windows task manager mean?
This number only says that some threads are scheduled by Windows to be executed on all CPU cores 100% of the time. It does not tell you how much of the physical execution resources on the CPU are actually utilized.
How is it possible that there is code being executed 100% of the time and the CPU is not fully utilized?
Modern CPUs have many execution units specialized for different tasks. Most applications are able to utilize only some portion of these units at any given time. For example MS Word doesn't need to do much floating point calculations, so the floating point execution units just sit idle when the CPU is running Word.
Even if the application was able to keep all the execution units fully utilized, it may not be able to feed them with data fast enough. Modern CPUs are a few orders of magnitude faster than modern RAM, so when the CPU is able to process the data faster than the memory is able to supply it, the CPU will end up waiting for the data most of the time.
Is there any way to run a different piece of code on the idle execution units?
Yes, this technology is called SMT (Symmetric MultiThreading). Intel calls their implementation of this technology HyperThreading. With this technology, a single physical CPU core executes two or more threads at once.
Unfortunately, unless the simultaneously running threads have vastly different computation requirements, they’ll end up competing for the same execution units most of the time. In normal circumstances, running two threads on a single physical CPU core gives 10%-20% performance boost over running just a single thread.
Why is my CPU temperature higher/fan louder during the denoising compared to the rendering?
The memory access pattern of the rendering code is very random - for example, each ray may hit a completely different object. This makes it very hard for the CPU to predict which parts of the memory will be accessed next, and in the end the CPU ends up waiting for data to be fetched from memory most of the time.
When the image is denoised, it is accessed sequentially one pixel at a time. Also the processing of each pixel takes long enough so that the CPU is able to read the next pixel from memory before it is needed. This is a best case scenario for the CPU - it does not have to wait for memory, and the execution units are (almost) fully utilized.
When the execution units sit idle waiting for memory, the CPU is able to optimize its energy consumption (and therefore heat generation), but when the denoising kicks in, the CPU units are kept busy all the time and so the temperature goes up.

Hardware / Skylake X
« on: 2017-06-27, 10:58:27 »
Anyone already got their hands on the new Skylake X CPUs?

From Anandtech Corona benchmark:
i7 6950x (10-core Broadwell): 4,110,984 rays/sec
i9 7900x (10-core Skylake X): 5,490,776 rays/sec


Intel made numerous improvements for the Skylake X cores, but I still find 33% performance boost kinda hard to believe. OK, it's just around 20% boost if we account for higher frequency of the newer CPU, but it still seems too much :)

I'd like to apologize for the recent lack of updates. Over the past few months I have been focusing more and more on the development of the Corona rendering core and its infrastructure which unfortunately had negative impact on the speed of SketchUp plugin development. This has been more extreme during the last few weeks when one of our developers quit and I am now stepping up to take his place on the Corona team.

I always tried to reserve at least some time for the SketchUp development, but now I am forced to admit that this won't be possible in the future and someone else needs to take my place as a SketchUp plugin developer.

I'll get back to SketchUp (at least for some time) once my work on Corona 1.5 is done. With any luck I'll be able to fix a few bugs and implement next major feature (lighting) before being swamped by core-related work again.

In the meantime we are interviewing candidates for my replacement.


We are definitely not abandoning the plugin. There has been some reorganization of the Corona team and we're currently looking for my replacement in the position of SketchUp plugin developer.

[Archive] Chaos Corona for Sketchup / Changelog
« on: 2016-04-19, 10:54:46 »
Since it was being a bit cumbersome to fill new release features, fixes and issues into the release info mail template (and I guess nobody scanned that for new feature list anyway), it may be better to have a changelog here in the forum.

New features
  • Render settings dialog sections are now collapsible. The current implementation is just temporary and will be replaced by a better one soon in the future.
  • Enable adaptivity option added to the render settings dialog
  • Regular sampling pattern experimental feature added. This optimizes the pixel sampling pattern during rendering and may give up to 10% performance boost, depending on the scene (at least according to my limited measurements). The control (named random sampling) is located in the performance section of the render settings dialog and has following values:
    • All passes - pixels in all passes will be sampled randomly. This is the default and corresponds to the original Corona sampling pattern.
    • None - pixels in all passes will be sampled in a regular pattern (from bottom of the image to the top)
    • First pass - pixels in the first pass will be sampled randomly, then the renderer switches to regular sampling pattern

  • After opening another SketchUp scene, material property and selection updates were not correctly propagated from SketchUp to Corona material editor.
  • The plugin would crash when launching material editor without an activated Corona license.
  • Materials were not reset properly when loading a another scene. This caused the old materials to be used in the new scene.
  • Texture coordinates from materials applied to groups should now be exported correctly.

  • Interactive rendering is still a bit unstable when changes are being made in the scene geometry.
  • When sections of the render settings dialog are (un)collapsed, the controls may sometimes be drawn in a wrong place. This is just a visual issue and may be "fixed" by collapsing/uncollapsing the section.
  • Material transfer from SketchUp to Corona does not work correctly when there are non-english characters in material name (letters with accents and similar).

Just FYI, since it was already mentioned in the latest release e-mail: We have decided to discontinue support for SketchUp 2015. This will hopefully allow us a bit faster development.

It seems that the time to start implementing some basic material editor may come soon (no promises though). The plan is to have support for almost all of the Corona features, but that may take some time. I want to start small and then add few more features on each release. To better prioritize, I'd like to ask for your opinion. Please share your thoughts on what features you would like to see in the material editor (and categorize them as "need to have" / "nice to have" if you can).

Although we're still in closed beta stage, everybody is welcome to share his opinion, not just the current beta testers.

Pages: [1]