config: allow hyprpaper as path to get backgrounds

this is a rough try, I don't know if it's really needed, just an idea from Discord
probably useful if hyprpaper used like dynamic changer
I think it's mostly ready.
EDIT: forgot about mon description, so probably after #137
EDIT2: actually seems to work now with mon description in hyprpaper.conf
Just the question: do we need this?

Just the question: do we need this?

uhhh... no?

Just the question: do we need this?

uhhh... no?

yeeaah.. kind of
alrighty then


Black screen on ipad

Hello,
I really like posterr. I wanted to use it on my iPad 2 and put it on the wall outside of my theater room. Unfortunately when I go to the page my posterr instance is on it gives me a black screen. On pc and phone it works. But not on iPad.
What is the problem?

I'm not sure. What browser are you using? Tried it with chrome?
I don't have an iPad and have not tested with Safari browser.

I tried safari, chrome and also a kiosk browser app. It's an iPad 2 on ios 9.3.5 so it's pretty old. I have had issues before with other things where the iPad couldn't load the javascript because it's just obsolete.
I tried a firefox docker image on my server to access it on the iPad through that. But for some reason I couldn't reach the ip address on the iPad.
I think I have to come up with some workaround. Any suggestions?

yeah, an ipad 2 is definitely uncharted territory. the javascript in posterr really needs something built in the last decade and a half :)
only thing i could suggest is if you can jailbreak it and somehow load a newer browser on it. You could try edge too, if it will load. Somehow, i think the version of chrome (and other browsers) that are supported on the ipad 2, may be just too old.
Definitely not in the supported bucket though. May be easier to just run off something else

I tried edge. The same. I have jailbroken it but unsure what to do. I'm pretty sure the alternative browsers on ios are just safari with skins. So it makes sense that none of them work.
This is the only tablet I have and I don't really want to buy a cheap android tablet just for this purpose. Posterr is a PERFECT way of reusing an old tablet like this one.
That would make it easier if you could borrow one yeah.

I did try on a borrowed iPad2, but the javascript engines on the iPad2 supported browsers just seem to be too old. I'd venture to say that a lot of web functionality wouldnt work on an ipad 2 anymore.

Aaah that's too bad. I've been trying to make use of the my iPad 2 for the last 2 years. I never gave up on it until now.  Thanks for helping me anyway!!
I suppose I'll think of it as a collectors item then xD.
Maybe someday I'll get a tablet and finally have an awesome Posterr display outside of my theater room.
This issue can now be closed.

Thanks mate. Sorry about that. The iPad 2 is just too old. If i come up with anything, I will reach out.


Deprecate apollo-errors

Typing should prevent us from making the same mistake again and it will also suggest what properties else you could be using.

the same mistake again

@kewitz What are you talking about?

@znarf I think Leo is referring to the misuse of the errors where we pass the message directly rather than in an object (ie. new Unauthorized({ message: '' })).
I agree with the change, I've misused this constructor a bunch of time. It's strange that we have to pass the message for an error through an object rather than a direct parameter.

Should we change the API and remove the message everywhere then?

My suggestion, in that case, would be to deprecate the outdated apollo-errors and extend the native ApolloError.

@kewitz I'm open to it.

Squashed the first commit, since it was related to the previous refactor.

Please rebase and merge!


GiphyMediaView not show gif generated from keyword (iOS)

🐛 Bug Report
(A clear and concise description of what the bug is)
To Reproduce
(Write your steps here:)

Run app, open Giphy Model, type keyword and click on the highlighted place

Choose one of the generated gif

Expected behavior
The gif file show below the button (like this)

Actual Behavior
The gif file not show below the button
Your Environment

Giphy React Native SDK version: 2.1.3
React Native version: 0.71.6
Platform(s) (iOS, Android, or both?): iOS
Device info (Simulator/Device? OS version? Debug/Release?): ios Simulator 16.2, ios Device 16.3

Reproducible Demo
GiphyMediaView API (Basic usage)

Hi @danhddao1997
Thank you for the report. We reproduced the issue on our side. I will let you know as soon as I get more details.


Fixed alphabetical order

Hacktoberfest notes:

due to volume of submissions, we may not be able to review PRs that do not pass tests and do not have informative titles.
please read our contributing guidelines
be sure to check the output of Travis-CI for linter errors
if this is your first open source contribution, make sure it's not your last!

What does this PR do?
Add Resource(s) | Remove Resource(s) | Add info | Improve Repo

Already merged wong alphabetical order file was creating CI test error, I fixed it.

For resources
Description
Why is this valuable (or not)?
How do we know it's really free?
For book lists, is it a book? For course lists, is it a course? etc.
Checklist:

[ ] Not a duplicate
[ ] Included author(s) if appropriate
[ ] Lists are in alphabetical order
[ ] Needed indications added (PDF, access notes, under construction)

Merge it as my other pull requests are pending because of the CI error I was getting

Whoops!


Please update the invite

https://github.com/cruise-automation/webviz/issues/461#issuecomment-1254719213

Most of the former Webviz chat has moved to the Foxglove Slack channel, you can join here: https://foxglove.dev/slack.


[bbc.co.uk] Support playlists

$ youtube-dl --write-sub http://www.bbc.co.uk/iplayer/episodes/b05rcz9v --verbose
[debug] System config: []
[debug] User config: []
[debug] Command-line args: [u'--write-sub', u'http://www.bbc.co.uk/iplayer/episodes/b05rcz9v', u'--verbose']
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2016.06.16
[debug] Python version 2.7.10 - Darwin-15.5.0-x86_64-i386-64bit
[debug] exe versions: avconv 11.4, avprobe 11.4
[debug] Proxy map: {}
[bbc] b05rcz9v: Downloading webpage
ERROR: Unable to extract playlist data; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 676, in extract_info
    ie_result = ie.extract(url)
  File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 342, in extract
    return self._real_extract(url)
  File "/usr/local/bin/youtube-dl/youtube_dl/extractor/bbc.py", line 892, in _real_extract
    webpage, 'playlist data'),
  File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 645, in _search_regex
    raise RegexNotFoundError('Unable to extract %s' % _name)
RegexNotFoundError: Unable to extract playlist data; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

individual downloads work fine

BBC playlists are not supported yet.

Thank you for informing and for updating the title.

bbc.co.uk playlists are supported since youtube-dl 2<IP_ADDRESS>.


Dart compilation error swallowed in MacOS builds

Steps to reproduce
Create the following app:
import 'package:flutter/widgets.dart';

void main() {
  runApp(
    NoSuchWidget(),
  );
}

Then try to run the following on a Mac:
$ flutter run -d macos

Expected behavior
You expect to see something alerting you to the error in your code that prevents the app from launching.  Indeed, if you were to try to run on Android, you see the following:
lib/main.dart:5:5: Error: Method not found: 'NoSuchWidget'.
    NoSuchWidget(),
    ^^^^^^^^^^^^

Actual behavior
You receive no feedback as to why the application failed to launch:
> flutter run -d macos
Launching lib/main.dart on macOS in debug mode...
** BUILD FAILED **

The following build commands failed:
        Ld /Users/tvolkert/project/bugreport/build/macos/Build/Products/Debug/bugreport.app/Contents/MacOS/bugreport normal x86_64
(1 failure)
Building macOS application...
Exception: Build process failed

FYI @stuartmorgan

This was run against 42e02d6

Duplicate of https://github.com/flutter/flutter/issues/33582


Add bridge-hub-westend-runtime to the polkadot-sdk manual build

We need to add bridge-hub-westend-runtime to the polkadot-sdk manual build here: https://github.com/paritytech/srtool/actions/workflows/manual-polkadot-sdk.yml.
bridge-hub-westend-runtime is not merged in master yet, but it will be soon (hopefully tomorrow EOD or thursday).
Relates to: https://github.com/paritytech/polkadot-sdk/issues/1988

It is not required if the new runtime(s) "look" like the others.
We no longer specify the list of runtimes but scan a repo for runtimes using:
https://github.com/paritytech/srtool/blob/master/.github/workflows/manual-polkadot-sdk.yml#L80-L87
The scan script is availble in the repo and will be included with the next srtool release.
You can test locally in a PR's branch.
Note: The srtool image 1.73.0 is not released yet but you may build it locally.


[FEAT]: Renaming source documents

What would you like to see?
At times, the source document name being shown can be incorrect, ambiguous, or otherwise not great. You should be able to click on such a document and select "rename". This only changes the property in the documents/ folder, but will help greatly in organization.

First off… Awesome product with lots of potential.
It is crucial for the people curating documents to be able to accurately identify and correlate between documents they are curating locally vs documents that have been already uploaded to the system. Random file names === context switch. Context switch === human performance loss. Human performance loss === lower quality source documents. Lower quantity source docs === not as good of a product. Please make it easier for document curators to do their magic. In a system containing hundreds of documents, this really becomes a no-brainer.
Also, if it is not possible yet to replace document embedding in the vector store (other issue), then this feature request becomes even more important.

How can someone recognize a doc they uploaded if you change the name?
If you let them change the name, at least they’d be able to version it.

Lastly, am curious. Does your locally running API have an endpoint to post document(s) with a customized name?

Also, I’ve noticed that the docs on the right side (which are indexed) do not seem retain any link to the origin folder. So, it might be difficult to tell one file from another if they have the same or similar name. I know it’s one of those things where whatever decision you make won’t end with everyone being happy, but maybe just the original filter they came from?
One last tweak here, maybe? If entering a GitHub url, maybe the folder name should start with github-, then repo name and branch name.


RootElement attributes not created on client transition

They're only added during server render.
<RootElement className="foo">
  <div>...</div>
</RootElement>

^ That won't get class name on client transition.

Turns out <RootElement>s are actually fine on client transition, and <RootContainer>s are fine on normal client transition.  But <RootContainer> with reuseDom doesn't update.  #218 addresses that (and adds a test page for it).


Implement File Connector Guide(s)

Description:

This guide(s) should cover the following use cases

Retrieving files from a location and doing some message mediation logic
Sending messages to a file location
Reading and writing from/to an FTP file source
Samba support
FTPS / SFTP support

Suggested Labels:

Suggested Assignees:

Affected Product Version:
OS, DB, other environment details and versions:
Steps to reproduce:
Related Issues:

Fixed by https://github.com/wso2/ballerina-integrator/pull/324


xgboost and LightGBM GPU requirements

GPU RAM behavior information:

xgboost GPU RAM requirement sampling is unreliable, as there is an initialization peak which is difficult to catch. What you see in nvidia-smi is not what you need in practice for xgboost.
LightGBM GPU RAM requirement never grows up, what you see in nvidia-smi is really what you need

Therefore, xgboost requires trial and error sampling (using different number of parallel workers) until crash, while LightGBM is easily predictable with only 1 sample.
Notes:

The GPU requirements also depend on the hyperparameters you are using for your model
For reference, the hyperparameters are the following: depth = 6, leaves = 63, bins = 255

Table for GPU requirements:

Dataset
Observations
xgboost
LightGBM

Airline
100,000
"nearly" 1GB (fits 4 on 4GB)
about 67 MB

Airline
1,000,000
"nearly" 1GB (fits 4 on 4GB)
about 93 MB

Airline
10,000,000
"nearly" 1.3GB (fits 3 on 4GB)
about 333 MB

To be updated with more datasets later.

LightGBM, 10M Airline x12 on same GPU on 4GB GPU:

xgboost, 10M Airline x3 on same GPU on 4GB GPU:


112 - World Clock added

🛠 Fixes Issue (1201)

👨💻 Changes proposed and Brief Description

I have added simple world clock that shows most of country's time.
✅ Check List (Check all the applicable boxes)

[ ] My code doesn't break any part of the project
[ ] This PR does not contain plagiarized content.
[✅] My Addition/Changes works properly and matches the overall repo pattern.
[✅] The title of my pull request is a short description of the requested changes.

📄 Note to reviewers

Not any.
📷 Screenshot

@VaibhavDhanani I can not see your files change. Try to make a new commit with new folder

@VaibhavDhanani Any update #1201

#1201

i don't know how to deploy on netlify/30daysodjs. if you can guide me , it will be good for me.

#1201

i don't know how to deploy on netlify/30daysodjs. if you can guide me , it will be good for me.

You dont have to deploy, just push your code because I can't see your code


Use the correct frontend_server and kernel compiler for fuchsia

This will require a refactor to artifacts to allow host artifacts to be selected based on the target platform. I need to write a 1-pager on making this scale-able beyond the system of ifs and switch statements we currently use.

In-tree invocation of the Fuchsia kernel compiler is here: https://fuchsia.googlesource.com/topaz/+/refs/heads/master/runtime/dart/dart_kernel.gni


Field errors are printed in English

Hi,
In a multilingual application, it seems that error messages are always printed in English.
Is it just me?

Hi @thomaslhostis,
I've checked it and it doesn't happen to me. Be sure that the implicit Lang object is present finally in the last template that calls the b3 helpers. Does it happen to you only for the helpers or also for other messages? For example, I've checked a simple form with a required and minLength constraints and call it like this:
@b3.text( form("name"), '_label -> Messages("name"), '_showConstraints -> true )

The label should be shown in your selected language (as it is called directly and not from the library), and the constraints should also be shown in that language if you have them within your messages file (for this example in messages.es)
constraint.required=Requerido
constraint.minLength=Longitud mínima: {0}

Oops, no, forget that. You're right, the internal Lang object is being missed. In my case it takes always the spanish one…
Ok, sorry for that. I think it happens only for infos (constraints) and errors. I'm now quite busy, but I'll try solve this issue in a couple of days.
Thanks for the issue!

No problem. Thank you for this very nice work. I really have to learn Scala because I would love to contribute. Meanwhile, if I have any suggestions, where should I put it?

Hi again. I think it is already fixed. It was easier than I thought. If you have more suggestions you can open more issues or email me directly and we can discuss them. As you want. Every suggestion is always welcome! ;)
Thank you!


Use proper number for confirmed cases in BS scraper. Prepare regexp f…

…or extracting more numbers.
Closes: https://github.com/openZH/covid_19/issues/193

Please rebase to fix the validation errors.

Please rebase to fix the validation errors.

The PR doesn't touch CSV files. You can just ignore the errors.

Force doesn't work since in your branch the errors are still there (that's why I asked for a rebase).
And yes sure I can ignore them, but GitHub doesn't allow merging PRs with failed checks from mobile. So I'll just do it later/tomorrow then.

On which branch the github actions / checks working on? Directly on my branch, or a temporary local branch with master and merged branch? It shouldn't matter that I have errors on my branch.

The checks run on your branch afaik. But this could be an issue with our validation workflow. I think I will change it, so that the CSV validation only runs on PRs containing CSVs. Sorry about the hassle.


How to calculate overall score for HallusionBench

It seems it can produce aACC, qACC and fACC for the bench, but your leaderboard shows of its overall score. Do I have to turn to its original paper to access overall score?
Thx!

Hi, @WizardMx ,
The original paper did not include an "Overall" metric, we define it because we want to use a single number to represent the overall performance on HallusionBench.
We define Overall Score as the average of aACC, qACC, fACC.


[Issue]: Cannot set fan speed for 7900XTX

Problem Description
When I try to use rocm-smi or amd-smi to set fan speed, I find that only 6700XT successfully but 7900XTX failed.
And rocm-smi command returns this:

It cannot display the marketing name of 7900XTX
OS:
NAME="Ubuntu"
VERSION="22.04.4 LTS (Jammy Jellyfish)"
CPU:
model name      : Intel(R) Core(TM) i7-9700 CPU @ 3.00GHz
GPU:
Name:                    Intel(R) Core(TM) i7-9700 CPU @ 3.00GHz
Marketing Name:          Intel(R) Core(TM) i7-9700 CPU @ 3.00GHz
Name:                    gfx1100
Marketing Name:
Name:                    amdgcn-amd-amdhsa--gfx1100
Name:                    gfx1100
Marketing Name:          AMD Radeon RX 6700 XT
Name:                    amdgcn-amd-amdhsa--gfx1030
(base) loong@ubuntu-server-220403:~/Codes/CV$ sudo amd-smi set -g 0 -f 80%
        ******WARNING******

        Operating your AMD GPU outside of official AMD specifications or outside of
        factory settings, including but not limited to the conducting of overclocking,
        over-volting or under-volting (including use of this interface software,
        even if such software has been directly or indirectly provided by AMD or otherwise
        affiliated in any way with AMD), may cause damage to your AMD GPU, system components
        and/or result in system failure, as well as cause other problems.

        Please use this utility with caution.

Do you accept these terms? [y/n] y
amdsmi.amdsmi_exception.AmdSmiLibraryException: Error code:
2 | AMDSMI_STATUS_NOT_SUPPORTED - Feature not supported
The above exception was the direct cause of the following exception:
ValueError: Unable to set fan speed 204 on GPU ID: 0 BDF:0000:03:00.0
(base) loong@ubuntu-server-220403:~/Codes/CV$ sudo amd-smi set -g 1 -f 80%
        ******WARNING******

        Operating your AMD GPU outside of official AMD specifications or outside of
        factory settings, including but not limited to the conducting of overclocking,
        over-volting or under-volting (including use of this interface software,
        even if such software has been directly or indirectly provided by AMD or otherwise
        affiliated in any way with AMD), may cause damage to your AMD GPU, system components
        and/or result in system failure, as well as cause other problems.

        Please use this utility with caution.

Do you accept these terms? [y/n] y
GPU: 1
FAN: Successfully set fan speed 204
Operating System
Ubuntu 22.04.4 LTS (Jammy Jellyfish)
CPU
Intel(R) Core(TM) i7-9700 CPU @ 3.00GHz
GPU
AMD Radeon RX 7900 XTX
ROCm Version
ROCm 6.0.0
ROCm Component
amdsmi, rocm_smi_lib
Steps to Reproduce
(base) loong@ubuntu-server-220403:~/Codes/CV$ sudo amd-smi set -g 0 -f 80%
        ******WARNING******

        Operating your AMD GPU outside of official AMD specifications or outside of
        factory settings, including but not limited to the conducting of overclocking,
        over-volting or under-volting (including use of this interface software,
        even if such software has been directly or indirectly provided by AMD or otherwise
        affiliated in any way with AMD), may cause damage to your AMD GPU, system components
        and/or result in system failure, as well as cause other problems.

        Please use this utility with caution.

Do you accept these terms? [y/n] y
amdsmi.amdsmi_exception.AmdSmiLibraryException: Error code:
2 | AMDSMI_STATUS_NOT_SUPPORTED - Feature not supported
The above exception was the direct cause of the following exception:
ValueError: Unable to set fan speed 204 on GPU ID: 0 BDF:0000:03:00.0
(base) loong@ubuntu-server-220403:~/Codes/CV$ sudo amd-smi set -g 1 -f 80%
        ******WARNING******

        Operating your AMD GPU outside of official AMD specifications or outside of
        factory settings, including but not limited to the conducting of overclocking,
        over-volting or under-volting (including use of this interface software,
        even if such software has been directly or indirectly provided by AMD or otherwise
        affiliated in any way with AMD), may cause damage to your AMD GPU, system components
        and/or result in system failure, as well as cause other problems.

        Please use this utility with caution.

Do you accept these terms? [y/n] y
GPU: 1
FAN: Successfully set fan speed 204
(Optional for Linux users) Output of /opt/rocm/bin/rocminfo --support
ROCk module is loaded
HSA System Attributes
Runtime Version:         1.1
System Timestamp Freq.:  1000.000000MHz
Sig. Max Wait Duration:<PHONE_NUMBER>3709551615 (0xFFFFFFFFFFFFFFFF) (timestamp count)
Machine Model:           LARGE
System Endianness:       LITTLE
Mwaitx:                  DISABLED
DMAbuf Support:          YES
==========
HSA Agents

Agent 1

Name:                    Intel(R) Core(TM) i7-9700 CPU @ 3.00GHz
Uuid:                    CPU-XX
Marketing Name:          Intel(R) Core(TM) i7-9700 CPU @ 3.00GHz
Vendor Name:             CPU
Feature:                 None specified
Profile:                 FULL_PROFILE
Float Round Mode:        NEAR
Max Queue Number:        0(0x0)
Queue Min Size:          0(0x0)
Queue Max Size:          0(0x0)
Queue Type:              MULTI
Node:                    0
Device Type:             CPU
Cache Info:
L1:                      32768(0x8000) KB
Chip ID:                 0(0x0)
ASIC Revision:           0(0x0)
Cacheline Size:          64(0x40)
Max Clock Freq. (MHz):   4700
BDFID:                   0
Internal Node ID:        0
Compute Unit:            8
SIMDs per CU:            0
Shader Engines:          0
Shader Arrs. per Eng.:   0
WatchPts on Addr. Ranges:1
Features:                None
Pool Info:
Pool 1
Segment:                 GLOBAL; FLAGS: FINE GRAINED
Size:                    65775456(0x3eba760) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Alignment:         4KB
Accessible by all:       TRUE
Pool 2
Segment:                 GLOBAL; FLAGS: KERNARG, FINE GRAINED
Size:                    65775456(0x3eba760) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Alignment:         4KB
Accessible by all:       TRUE
Pool 3
Segment:                 GLOBAL; FLAGS: COARSE GRAINED
Size:                    65775456(0x3eba760) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Alignment:         4KB
Accessible by all:       TRUE
ISA Info:

Agent 2

Name:                    gfx1100
Uuid:                    GPU-85631fd855c9cea1
Marketing Name:
Vendor Name:             AMD
Feature:                 KERNEL_DISPATCH
Profile:                 BASE_PROFILE
Float Round Mode:        NEAR
Max Queue Number:        128(0x80)
Queue Min Size:          64(0x40)
Queue Max Size:          131072(0x20000)
Queue Type:              MULTI
Node:                    1
Device Type:             GPU
Cache Info:
L1:                      32(0x20) KB
L2:                      6144(0x1800) KB
L3:                      98304(0x18000) KB
Chip ID:                 29772(0x744c)
ASIC Revision:           0(0x0)
Cacheline Size:          64(0x40)
Max Clock Freq. (MHz):   2482
BDFID:                   768
Internal Node ID:        1
Compute Unit:            96
SIMDs per CU:            2
Shader Engines:          6
Shader Arrs. per Eng.:   2
WatchPts on Addr. Ranges:4
Coherent Host Access:    FALSE
Features:                KERNEL_DISPATCH
Fast F16 Operation:      TRUE
Wavefront Size:          32(0x20)
Workgroup Max Size:      1024(0x400)
Workgroup Max Size per Dimension:
x                        1024(0x400)
y                        1024(0x400)
z                        1024(0x400)
Max Waves Per CU:        32(0x20)
Max Work-item Per CU:    1024(0x400)
Grid Max Size:<PHONE_NUMBER>(0xffffffff)
Grid Max Size per Dimension:
x<PHONE_NUMBER>(0xffffffff)
y<PHONE_NUMBER>(0xffffffff)
z<PHONE_NUMBER>(0xffffffff)
Max fbarriers/Workgrp:   32
Packet Processor uCode:: 550
SDMA engine uCode::      19
IOMMU Support::          None
Pool Info:
Pool 1
Segment:                 GLOBAL; FLAGS: COARSE GRAINED
Size:                    25149440(0x17fc000) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Alignment:         4KB
Accessible by all:       FALSE
Pool 2
Segment:                 GLOBAL; FLAGS: EXTENDED FINE GRAINED
Size:                    25149440(0x17fc000) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Alignment:         4KB
Accessible by all:       FALSE
Pool 3
Segment:                 GROUP
Size:                    64(0x40) KB
Allocatable:             FALSE
Alloc Granule:           0KB
Alloc Alignment:         0KB
Accessible by all:       FALSE
ISA Info:
ISA 1
Name:                    amdgcn-amd-amdhsa--gfx1100
Machine Models:          HSA_MACHINE_MODEL_LARGE
Profiles:                HSA_PROFILE_BASE
Default Rounding Mode:   NEAR
Default Rounding Mode:   NEAR
Fast f16:                TRUE
Workgroup Max Size:      1024(0x400)
Workgroup Max Size per Dimension:
x                        1024(0x400)
y                        1024(0x400)
z                        1024(0x400)
Grid Max Size:<PHONE_NUMBER>(0xffffffff)
Grid Max Size per Dimension:
x<PHONE_NUMBER>(0xffffffff)
y<PHONE_NUMBER>(0xffffffff)
z<PHONE_NUMBER>(0xffffffff)
FBarrier Max Size:       32

Agent 3

Name:                    gfx1100
Uuid:                    GPU-XX
Marketing Name:          AMD Radeon RX 6700 XT
Vendor Name:             AMD
Feature:                 KERNEL_DISPATCH
Profile:                 BASE_PROFILE
Float Round Mode:        NEAR
Max Queue Number:        128(0x80)
Queue Min Size:          64(0x40)
Queue Max Size:          131072(0x20000)
Queue Type:              MULTI
Node:                    2
Device Type:             GPU
Cache Info:
L1:                      16(0x10) KB
L2:                      3072(0xc00) KB
L3:                      98304(0x18000) KB
Chip ID:                 29663(0x73df)
ASIC Revision:           0(0x0)
Cacheline Size:          64(0x40)
Max Clock Freq. (MHz):   2855
BDFID:                   2304
Internal Node ID:        2
Compute Unit:            40
SIMDs per CU:            2
Shader Engines:          2
Shader Arrs. per Eng.:   2
WatchPts on Addr. Ranges:4
Coherent Host Access:    FALSE
Features:                KERNEL_DISPATCH
Fast F16 Operation:      TRUE
Wavefront Size:          32(0x20)
Workgroup Max Size:      1024(0x400)
Workgroup Max Size per Dimension:
x                        1024(0x400)
y                        1024(0x400)
z                        1024(0x400)
Max Waves Per CU:        32(0x20)
Max Work-item Per CU:    1024(0x400)
Grid Max Size:<PHONE_NUMBER>(0xffffffff)
Grid Max Size per Dimension:
x<PHONE_NUMBER>(0xffffffff)
y<PHONE_NUMBER>(0xffffffff)
z<PHONE_NUMBER>(0xffffffff)
Max fbarriers/Workgrp:   32
Packet Processor uCode:: 116
SDMA engine uCode::      80
IOMMU Support::          None
Pool Info:
Pool 1
Segment:                 GLOBAL; FLAGS: COARSE GRAINED
Size:                    12566528(0xbfc000) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Alignment:         4KB
Accessible by all:       FALSE
Pool 2
Segment:                 GLOBAL; FLAGS: EXTENDED FINE GRAINED
Size:                    12566528(0xbfc000) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Alignment:         4KB
Accessible by all:       FALSE
Pool 3
Segment:                 GROUP
Size:                    64(0x40) KB
Allocatable:             FALSE
Alloc Granule:           0KB
Alloc Alignment:         0KB
Accessible by all:       FALSE
ISA Info:
ISA 1
Name:                    amdgcn-amd-amdhsa--gfx1100
Machine Models:          HSA_MACHINE_MODEL_LARGE
Profiles:                HSA_PROFILE_BASE
Default Rounding Mode:   NEAR
Default Rounding Mode:   NEAR
Fast f16:                TRUE
Workgroup Max Size:      1024(0x400)
Workgroup Max Size per Dimension:
x                        1024(0x400)
y                        1024(0x400)
z                        1024(0x400)
Grid Max Size:<PHONE_NUMBER>(0xffffffff)
Grid Max Size per Dimension:
x<PHONE_NUMBER>(0xffffffff)
y<PHONE_NUMBER>(0xffffffff)
z<PHONE_NUMBER>(0xffffffff)
FBarrier Max Size:       32
*** Done ***
Additional Information
No response

you can try and trace it to the sysfs file and then edit it directly:
sudo strace --trace=file --successful-only /opt/rocm/bin/rocm-smi --setfan 100% 2>&1 | grep sys/class
This will return a bunch of stuff and point you to something like:
/sys/class/drm/card1/device/hwmon/hwmon2/pwm1
See if you can set these manually.
I'm expecting that this is a driver issue and amdsmi/rocmsmi can't do anything about it.
P.S.
You can also run it with sudo RSMI_LOGGING=1 /opt/rocm/bin/rocm-smi --setfan 100%. it will populate /var/log/rocm_smi_lib/ROCm-SMI-lib.log. =3 will additionally print to console.

I try this:
sudo strace --trace=file --successful-only /opt/rocm/bin/rocm-smi --setfan 100% 2>&1 | grep sys/class

and it returns:
$ sudo strace --trace=file --successful-only /opt/rocm/bin/rocm-smi --setfan 100% 2>&1 | grep sys/class
openat(AT_FDCWD, "/sys/class/drm", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 3
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/properties", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/gpu_id", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/gpu_id", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/properties", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/gpu_id", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/gpu_id", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/properties", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/gpu_id", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/gpu_id", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/properties", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/properties", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/gpu_id", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/gpu_id", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/properties", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/properties", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/gpu_id", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/gpu_id", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/name", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/name", O_RDONLY) = 4
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/io_links", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/io_links/0/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/io_links/0/properties", O_RDONLY) = 5
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/gpu_id", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/gpu_id", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/properties", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/gpu_id", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/gpu_id", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/properties", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/gpu_id", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/gpu_id", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/name", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/name", O_RDONLY) = 4
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/io_links", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/io_links/0/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/io_links/0/properties", O_RDONLY) = 5
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/gpu_id", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/gpu_id", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/properties", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/properties", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/gpu_id", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/gpu_id", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/name", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/name", O_RDONLY) = 4
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/io_links", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/io_links/0/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/io_links/0/properties", O_RDONLY) = 5
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/gpu_id", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/gpu_id", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/properties", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/properties", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/gpu_id", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/gpu_id", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/name", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/name", O_RDONLY) = 4
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/io_links", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/io_links/0/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/io_links/0/properties", O_RDONLY) = 5
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/gpu_id", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/gpu_id", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/properties", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/gpu_id", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/gpu_id", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/properties", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/gpu_id", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/gpu_id", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/name", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/name", O_RDONLY) = 4
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/io_links", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/io_links/0/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/io_links/0/properties", O_RDONLY) = 5
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/gpu_id", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/gpu_id", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/properties", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/properties", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/gpu_id", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/gpu_id", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/name", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/name", O_RDONLY) = 4
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/io_links", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/io_links/0/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/io_links/0/properties", O_RDONLY) = 5
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/gpu_id", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/gpu_id", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/properties", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/drm/card0/device/vendor", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/drm/card0/device/vendor", O_RDONLY) = 4
newfstatat(AT_FDCWD, "/sys/class/drm/card0/device/hwmon", {st_mode=S_IFDIR|0755, st_size=0, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/drm/card0/device/hwmon", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 5
newfstatat(AT_FDCWD, "/sys/class/drm/card0/device/hwmon/hwmon3/name", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/drm/card0/device/hwmon/hwmon3/name", O_RDONLY) = 6
newfstatat(AT_FDCWD, "/sys/class/drm/card0/device/hwmon/hwmon3/temp1_label", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/drm/card0/device/hwmon/hwmon3/temp1_label", O_RDONLY) = 6
newfstatat(AT_FDCWD, "/sys/class/drm/card0/device/hwmon/hwmon3/temp2_label", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/drm/card0/device/hwmon/hwmon3/temp2_label", O_RDONLY) = 6
newfstatat(AT_FDCWD, "/sys/class/drm/card0/device/hwmon/hwmon3/temp3_label", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/drm/card0/device/hwmon/hwmon3/temp3_label", O_RDONLY) = 6
newfstatat(AT_FDCWD, "/sys/class/drm/card0/device/hwmon/hwmon3/in0_label", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/drm/card0/device/hwmon/hwmon3/in0_label", O_RDONLY) = 6
openat(AT_FDCWD, "/sys/class/drm/card0/device/drm", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 5
newfstatat(AT_FDCWD, "/sys/class/drm/card0/device/unique_id", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/drm/card0/device/unique_id", O_RDONLY) = 5
newfstatat(AT_FDCWD, "/sys/class/drm/card1/device/vendor", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/drm/card1/device/vendor", O_RDONLY) = 5
newfstatat(AT_FDCWD, "/sys/class/drm/card1/device/hwmon", {st_mode=S_IFDIR|0755, st_size=0, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/drm/card1/device/hwmon", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 6
newfstatat(AT_FDCWD, "/sys/class/drm/card1/device/hwmon/hwmon4/name", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/drm/card1/device/hwmon/hwmon4/name", O_RDONLY) = 7
newfstatat(AT_FDCWD, "/sys/class/drm/card1/device/hwmon/hwmon4/temp1_label", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/drm/card1/device/hwmon/hwmon4/temp1_label", O_RDONLY) = 7
newfstatat(AT_FDCWD, "/sys/class/drm/card1/device/hwmon/hwmon4/temp2_label", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/drm/card1/device/hwmon/hwmon4/temp2_label", O_RDONLY) = 7
newfstatat(AT_FDCWD, "/sys/class/drm/card1/device/hwmon/hwmon4/temp3_label", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/drm/card1/device/hwmon/hwmon4/temp3_label", O_RDONLY) = 7
newfstatat(AT_FDCWD, "/sys/class/drm/card1/device/hwmon/hwmon4/in0_label", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/drm/card1/device/hwmon/hwmon4/in0_label", O_RDONLY) = 7
openat(AT_FDCWD, "/sys/class/drm/card1/device/drm", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 6
readlink("/sys/class/drm/card0", "../../devices/pci0000:00/0000:00"..., 512) = 86
readlink("/sys/class/drm/card1", "../../devices/pci0000:00/0000:00"..., 512) = 86
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 3
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/properties", O_RDONLY) = 6
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/properties", O_RDONLY) = 6
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/gpu_id", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/gpu_id", O_RDONLY) = 6
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/name", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/name", O_RDONLY) = 6
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/io_links", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 6
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/io_links/0/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/io_links/0/properties", O_RDONLY) = 7
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/gpu_id", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/gpu_id", O_RDONLY) = 6
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/properties", O_RDONLY) = 6
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/properties", O_RDONLY) = 6
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/gpu_id", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/gpu_id", O_RDONLY) = 6
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/name", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/name", O_RDONLY) = 6
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/io_links", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 6
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/io_links/0/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/io_links/0/properties", O_RDONLY) = 7
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/gpu_id", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/gpu_id", O_RDONLY) = 6
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/properties", O_RDONLY) = 6
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/properties", O_RDONLY) = 6
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/gpu_id", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/gpu_id", O_RDONLY) = 6
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 3
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/io_links", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 6
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/io_links/0/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/1/io_links/0/properties", O_RDONLY) = 7
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/io_links", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 6
newfstatat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/io_links/0/properties", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/2/io_links/0/properties", O_RDONLY) = 7
openat(AT_FDCWD, "/sys/class/kfd/kfd/topology/nodes/0/io_links", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 6
newfstatat(AT_FDCWD, "/sys/class/drm/card0/device/vendor", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/drm/card0/device/vendor", O_RDONLY) = 9
newfstatat(AT_FDCWD, "/sys/class/drm/card0/device/hwmon/hwmon3/pwm1_max", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/drm/card0/device/hwmon/hwmon3/pwm1_max", O_RDONLY) = 9
newfstatat(AT_FDCWD, "/sys/class/drm/card0/device/hwmon/hwmon3/pwm1_enable", {st_mode=S_IFREG|0644, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/drm/card0/device/hwmon/hwmon3/pwm1_enable", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 9
newfstatat(AT_FDCWD, "/sys/class/drm/card0/device/hwmon/hwmon3/pwm1", {st_mode=S_IFREG|0644, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/drm/card0/device/hwmon/hwmon3/pwm1", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 9
newfstatat(AT_FDCWD, "/sys/class/drm/card1/device/hwmon/hwmon4/pwm1_max", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/drm/card1/device/hwmon/hwmon4/pwm1_max", O_RDONLY) = 9
newfstatat(AT_FDCWD, "/sys/class/drm/card1/device/hwmon/hwmon4/pwm1_enable", {st_mode=S_IFREG|0644, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/drm/card1/device/hwmon/hwmon4/pwm1_enable", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 9
newfstatat(AT_FDCWD, "/sys/class/drm/card1/device/hwmon/hwmon4/pwm1", {st_mode=S_IFREG|0644, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/sys/class/drm/card1/device/hwmon/hwmon4/pwm1", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 9

I also run sudo RSMI_LOGGING=1 /opt/rocm/bin/rocm-smi --setfan 100%
and the content of log file(/var/log/rocm_smi_lib/ROCm-SMI-lib.log) is:
:/var/log/rocm_smi_lib$ cat ROCm-SMI-lib.log
2024-04-26 08:52:55.460212  [ALWAYS]: =============== ROCM SMI initialize ================
2024-04-26 08:52:55.460279  [INFO]: ====== Gathered system details ============
SYSTEM NAME: Linux
OS DISTRIBUTION: Ubuntu 22.04.4 LTS
NODE NAME: ubuntu-server-220403
RELEASE: 6.5.0-28-generic
VERSION: #29~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Thu Apr  4 14:39:20 UTC 2
MACHINE TYPE: x86_64
DOMAIN: (none)
ENDIANNESS: Little Endian, multi-bit symbols encoded as little endian (LSB first)
ROCM BUILD TYPE: debug
ROCM-SMI-LIB PATH: /opt/rocm-6.0.2/libexec/rocm_smi/../../lib/librocm_smi64.so.6
ROCM-SMI-LIB BUILD DATE: Thu Feb  8 23:54:30 2024
ROCM ENV VARIABLES:
        RSMI_DEBUG_BITFIELD = <undefined>
        RSMI_DEBUG_DRM_ROOT_OVERRIDE = <undefined>
        RSMI_DEBUG_HWMON_ROOT_OVERRIDE = <undefined>
        RSMI_DEBUG_PP_ROOT_OVERRIDE = <undefined>
        RSMI_DEBUG_INFINITE_LOOP = <undefined>
        RSMI_LOGGING = 1
        RSMI_LOGGING (are logs on) = TRUE
        RSMI_DEBUG_ENUM_OVERRIDE = {}
AMD GFX VERSIONS:
        N/A - No AMD devices detected

2024-04-26 08:52:55.460299  [DEBUG]: uint32_t amd::smi::RocmSMI::DiscoverAmdgpuDevices() | Discovered a potential of 10 cards |
2024-04-26 08:52:55.460366  [DEBUG]: int amd::smi::get_gpu_id(uint32_t, uint64_t*) | File: /sys/class/kfd/kfd/topology/nodes/0/gpu_id | Successfully read node #0 for gpu_id | Data (gpu_id) *gpu_id = 0 | return = 0 |
2024-04-26 08:52:55.460415  [DEBUG]: int amd::smi::read_node_properties(uint32_t, std::string, uint64_t*) | File: /sys/class/kfd/kfd/topology/nodes/0/properties | Successfully read node #0 for property_name = unique_id | Data (unique_id) * val = 0 | return = 22 |
2024-04-26 08:52:55.460458  [DEBUG]: int amd::smi::read_node_properties(uint32_t, std::string, uint64_t*) | File: /sys/class/kfd/kfd/topology/nodes/0/properties | Successfully read node #0 for property_name = location_id | Data (location_id) * val = 0 | return = 0 |
2024-04-26 08:52:55.460563  [DEBUG]: int amd::smi::get_gpu_id(uint32_t, uint64_t*) | File: /sys/class/kfd/kfd/topology/nodes/1/gpu_id | Successfully read node #1 for gpu_id | Data (gpu_id) *gpu_id = 7642 | return = 0 |
2024-04-26 08:52:55.460647  [DEBUG]: int amd::smi::read_node_properties(uint32_t, std::string, uint64_t*) | File: /sys/class/kfd/kfd/topology/nodes/1/properties | Successfully read node #1 for property_name = unique_id | Data (unique_id) * val =<PHONE_NUMBER>751456417 | return = 0 |
2024-04-26 08:52:55.460729  [DEBUG]: int amd::smi::read_node_properties(uint32_t, std::string, uint64_t*) | File: /sys/class/kfd/kfd/topology/nodes/1/properties | Successfully read node #1 for property_name = location_id | Data (location_id) * val = 768 | return = 0 |
2024-04-26 08:52:55.460821  [DEBUG]: int amd::smi::get_gpu_id(uint32_t, uint64_t*) | File: /sys/class/kfd/kfd/topology/nodes/2/gpu_id | Successfully read node #2 for gpu_id | Data (gpu_id) *gpu_id = 50916 | return = 0 |
2024-04-26 08:52:55.460902  [DEBUG]: int amd::smi::read_node_properties(uint32_t, std::string, uint64_t*) | File: /sys/class/kfd/kfd/topology/nodes/2/properties | Successfully read node #2 for property_name = unique_id | Data (unique_id) * val = 0 | return = 0 |
2024-04-26 08:52:55.460982  [DEBUG]: int amd::smi::read_node_properties(uint32_t, std::string, uint64_t*) | File: /sys/class/kfd/kfd/topology/nodes/2/properties | Successfully read node #2 for property_name = location_id | Data (location_id) * val = 2304 | return = 0 |
2024-04-26 08:52:55.460993  [ERROR]: int amd::smi::get_gpu_id(uint32_t, uint64_t*) | File: /sys/class/kfd/kfd/topology/nodes/3/gpu_id | Issue: Could not read node #3, KFD node was an unsupported node. | return = 1 |
2024-04-26 08:52:55.461001  [ERROR]: int amd::smi::read_node_properties(uint32_t, std::string, uint64_t*) | File: /sys/class/kfd/kfd/topology/nodes/3/properties | Issue: Could not read node #3, KFD node was an unsupported node. | return = 1 |
2024-04-26 08:52:55.461009  [ERROR]: int amd::smi::read_node_properties(uint32_t, std::string, uint64_t*) | File: /sys/class/kfd/kfd/topology/nodes/3/properties | Issue: Could not read node #3, KFD node was an unsupported node. | return = 1 |
2024-04-26 08:52:55.461017  [DEBUG]: uint32_t amd::smi::RocmSMI::DiscoverAmdgpuDevices() | Ordered system nodes found = {
[node_id = 2; gpu_id = 50916; unique_id = 0; location_id = 2304],
[node_id = 1; gpu_id = 7642; unique_id =<PHONE_NUMBER>751456417; location_id = 768], }
2024-04-26 08:52:55.461038  [DEBUG]: bool amd::smi::isAMDGPU(std::string) | device_path = /sys/class/drm/card0 is an amdgpu device - TRUE
2024-04-26 08:52:55.461045  [TRACE]: rsmi_status_t rsmi_dev_compute_partition_get(uint32_t, char*, uint32_t)| ======= start =======, dv_ind = 0
2024-04-26 08:52:55.461050  [TRACE]: rsmi_status_t rsmi_dev_unique_id_get(uint32_t, uint64_t*)| ======= start =======
2024-04-26 08:52:55.461054  [TRACE]: void amd::smi::RocmSMI::AddToDeviceList(std::string, uint64_t) | ======= start =======
2024-04-26 08:52:55.461091  [TRACE]: int32_t amd::smi::Monitor::setTempSensorLabelMap() | ======= start =======
2024-04-26 08:52:55.461109  [INFO]: Successfully read SYSFS file (/sys/class/drm/card0/device/hwmon/hwmon3/temp1_label), returning str = edge
2024-04-26 08:52:55.461113  [INFO]: int amd::smi::Monitor::readMonitor(amd::smi::MonitorTypes, uint32_t, std::string*) | Success | Read hwmon file: /sys/class/drm/card0/device/hwmon/hwmon3/temp1_label | Type: MonitorTypes::kMonTempLabel | Sensor id: 1 | Data: edge | Returning: 0 |
2024-04-26 08:52:55.461127  [INFO]: Successfully read SYSFS file (/sys/class/drm/card0/device/hwmon/hwmon3/temp2_label), returning str = junction
2024-04-26 08:52:55.461131  [INFO]: int amd::smi::Monitor::readMonitor(amd::smi::MonitorTypes, uint32_t, std::string*) | Success | Read hwmon file: /sys/class/drm/card0/device/hwmon/hwmon3/temp2_label | Type: MonitorTypes::kMonTempLabel | Sensor id: 2 | Data: junction | Returning: 0 |
2024-04-26 08:52:55.461145  [INFO]: Successfully read SYSFS file (/sys/class/drm/card0/device/hwmon/hwmon3/temp3_label), returning str = mem
2024-04-26 08:52:55.461149  [INFO]: int amd::smi::Monitor::readMonitor(amd::smi::MonitorTypes, uint32_t, std::string*) | Success | Read hwmon file: /sys/class/drm/card0/device/hwmon/hwmon3/temp3_label | Type: MonitorTypes::kMonTempLabel | Sensor id: 3 | Data: mem | Returning: 0 |
2024-04-26 08:52:55.461156  [INFO]: int amd::smi::Monitor::readMonitor(amd::smi::MonitorTypes, uint32_t, std::string*) | Success | Read hwmon file: /sys/class/drm/card0/device/hwmon/hwmon3/temp4_label | Type: MonitorTypes::kMonTempLabel | Sensor id: 4 | Data: mem | Returning: 2 |
2024-04-26 08:52:55.461162  [INFO]: int amd::smi::Monitor::readMonitor(amd::smi::MonitorTypes, uint32_t, std::string*) | Success | Read hwmon file: /sys/class/drm/card0/device/hwmon/hwmon3/temp5_label | Type: MonitorTypes::kMonTempLabel | Sensor id: 5 | Data: mem | Returning: 2 |
2024-04-26 08:52:55.461169  [INFO]: int amd::smi::Monitor::readMonitor(amd::smi::MonitorTypes, uint32_t, std::string*) | Success | Read hwmon file: /sys/class/drm/card0/device/hwmon/hwmon3/temp6_label | Type: MonitorTypes::kMonTempLabel | Sensor id: 6 | Data: mem | Returning: 2 |
2024-04-26 08:52:55.461175  [INFO]: int amd::smi::Monitor::readMonitor(amd::smi::MonitorTypes, uint32_t, std::string*) | Success | Read hwmon file: /sys/class/drm/card0/device/hwmon/hwmon3/temp7_label | Type: MonitorTypes::kMonTempLabel | Sensor id: 7 | Data: mem | Returning: 2 |
2024-04-26 08:52:55.461189  [INFO]: Successfully read SYSFS file (/sys/class/drm/card0/device/hwmon/hwmon3/in0_label), returning str = vddgfx
2024-04-26 08:52:55.461193  [INFO]: int amd::smi::Monitor::readMonitor(amd::smi::MonitorTypes, uint32_t, std::string*) | Success | Read hwmon file: /sys/class/drm/card0/device/hwmon/hwmon3/in0_label | Type: MonitorTypes::kMonVoltLabel | Sensor id: 0 | Data: vddgfx | Returning: 0 |
2024-04-26 08:52:55.461204  [DEBUG]: uint32_t amd::smi::GetDrmRenderMinor(std::string) | Discovered drmRenderMinor = 128 | For drm_path = /sys/class/drm/card0/device/drm |
2024-04-26 08:52:55.461213  [DEBUG]: void amd::smi::RocmSMI::AddToDeviceList(std::string, uint64_t) | Adding to device list dev_name = card0 | path = /sys/class/drm/card0 | bdfid =<PHONE_NUMBER>3709551615 | card index = 0 |
2024-04-26 08:52:55.461221  [DEBUG]: uint32_t amd::smi::RocmSMI::DiscoverAmdgpuDevices() | Ordered system nodes seen in lookup = {
[node_id = 2; gpu_id = 50916; unique_id = 0; location_id = 2304],
[node_id = 1; gpu_id = 7642; unique_id =<PHONE_NUMBER>751456417; location_id = 768], }
2024-04-26 08:52:55.461224  [TRACE]: rsmi_status_t rsmi_dev_compute_partition_get(uint32_t, char*, uint32_t)| ======= start =======, dv_ind = 0
2024-04-26 08:52:55.461233  [ERROR]: int amd::smi::Device::openSysfsFileStream(amd::smi::DevInfoTypes, T*, const char*) [with T = std::basic_ifstream<char>] | Issue: File did not exist - SYSFS file (/sys/class/drm/card0/device/current_compute_partition) for DevInfoInfoType (amd::smi::kDevComputePartition), returning 2
2024-04-26 08:52:55.461236  [ERROR]: Could not read device info string for DevInfoType (amd::smi::kDevComputePartition), returning 2
2024-04-26 08:52:55.461240  [ERROR]: rsmi_status_t rsmi_dev_compute_partition_get(uint32_t, char*, uint32_t) | ======= end =======  | Fail  | Device #: 0 | Type: amd::smi::kDevComputePartition | Cause: could not retrieve current compute partition | Returning = RSMI_STATUS_NOT_SUPPORTED: This function is not supported in the current environment. |
2024-04-26 08:52:55.461243  [TRACE]: rsmi_status_t rsmi_dev_unique_id_get(uint32_t, uint64_t*)| ======= start =======
2024-04-26 08:52:55.461255  [INFO]: int amd::smi::Device::openSysfsFileStream(amd::smi::DevInfoTypes, T*, const char*) [with T = std::basic_ifstream<char>] | Successfully opened SYSFS file (/sys/class/drm/card0/device/unique_id) for DevInfoInfoType (amd::smi::kDevUniqueId)
2024-04-26 08:52:55.461262  [INFO]: int amd::smi::Device::readDevInfoStr(amd::smi::DevInfoTypes, std::string*)Successfully read device info string for DevInfoType (amd::smi::kDevUniqueId): 85631fd855c9cea1 |  File stream is closed | [GOOD] No bad bit read, successful read operation | [GOOD] No fail - Successful read operation | [GOOD] No eof error - Successful read operation | [GOOD] read good - Successful read operation
2024-04-26 08:52:55.461269  [DEBUG]: uint32_t amd::smi::RocmSMI::DiscoverAmdgpuDevices() | device/node id (cardId) = 0 | card id (cardAdded) = 0 | numMonDevices = 1 | compute partition = UNKNOWN | temp_primary_unique_id =<PHONE_NUMBER>751456417 | Num of nodes matching temp_primary_unique_id = 1 | device_uuid (hex/uint) = Hex (MSB): 0x85631fd855c9cea1, Unsigned int:<PHONE_NUMBER>751456417, Byte Size: 8 | device_uuid (uint64_t) =<PHONE_NUMBER>751456417
2024-04-26 08:52:55.461273  [DEBUG]: uint32_t amd::smi::RocmSMI::DiscoverAmdgpuDevices() | REFRESH - primary_unique_id =<PHONE_NUMBER>751456417 has 1 known gpu nodes
2024-04-26 08:52:55.461276  [DEBUG]: uint32_t amd::smi::RocmSMI::DiscoverAmdgpuDevices() | After finding primary_unique_id =<PHONE_NUMBER>751456417 erased 1 nodes
2024-04-26 08:52:55.461292  [DEBUG]: bool amd::smi::isAMDGPU(std::string) | device_path = /sys/class/drm/card1 is an amdgpu device - TRUE
2024-04-26 08:52:55.461296  [TRACE]: rsmi_status_t rsmi_dev_compute_partition_get(uint32_t, char*, uint32_t)| ======= start =======, dv_ind = 1
2024-04-26 08:52:55.461299  [TRACE]: rsmi_status_t rsmi_dev_unique_id_get(uint32_t, uint64_t*)| ======= start =======
2024-04-26 08:52:55.461302  [TRACE]: void amd::smi::RocmSMI::AddToDeviceList(std::string, uint64_t) | ======= start =======
2024-04-26 08:52:55.461335  [TRACE]: int32_t amd::smi::Monitor::setTempSensorLabelMap() | ======= start =======
2024-04-26 08:52:55.461351  [INFO]: Successfully read SYSFS file (/sys/class/drm/card1/device/hwmon/hwmon4/temp1_label), returning str = edge
2024-04-26 08:52:55.461355  [INFO]: int amd::smi::Monitor::readMonitor(amd::smi::MonitorTypes, uint32_t, std::string*) | Success | Read hwmon file: /sys/class/drm/card1/device/hwmon/hwmon4/temp1_label | Type: MonitorTypes::kMonTempLabel | Sensor id: 1 | Data: edge | Returning: 0 |
2024-04-26 08:52:55.461368  [INFO]: Successfully read SYSFS file (/sys/class/drm/card1/device/hwmon/hwmon4/temp2_label), returning str = junction
2024-04-26 08:52:55.461373  [INFO]: int amd::smi::Monitor::readMonitor(amd::smi::MonitorTypes, uint32_t, std::string*) | Success | Read hwmon file: /sys/class/drm/card1/device/hwmon/hwmon4/temp2_label | Type: MonitorTypes::kMonTempLabel | Sensor id: 2 | Data: junction | Returning: 0 |
2024-04-26 08:52:55.461390  [INFO]: Successfully read SYSFS file (/sys/class/drm/card1/device/hwmon/hwmon4/temp3_label), returning str = mem
2024-04-26 08:52:55.461394  [INFO]: int amd::smi::Monitor::readMonitor(amd::smi::MonitorTypes, uint32_t, std::string*) | Success | Read hwmon file: /sys/class/drm/card1/device/hwmon/hwmon4/temp3_label | Type: MonitorTypes::kMonTempLabel | Sensor id: 3 | Data: mem | Returning: 0 |
2024-04-26 08:52:55.461401  [INFO]: int amd::smi::Monitor::readMonitor(amd::smi::MonitorTypes, uint32_t, std::string*) | Success | Read hwmon file: /sys/class/drm/card1/device/hwmon/hwmon4/temp4_label | Type: MonitorTypes::kMonTempLabel | Sensor id: 4 | Data: mem | Returning: 2 |
2024-04-26 08:52:55.461407  [INFO]: int amd::smi::Monitor::readMonitor(amd::smi::MonitorTypes, uint32_t, std::string*) | Success | Read hwmon file: /sys/class/drm/card1/device/hwmon/hwmon4/temp5_label | Type: MonitorTypes::kMonTempLabel | Sensor id: 5 | Data: mem | Returning: 2 |
2024-04-26 08:52:55.461413  [INFO]: int amd::smi::Monitor::readMonitor(amd::smi::MonitorTypes, uint32_t, std::string*) | Success | Read hwmon file: /sys/class/drm/card1/device/hwmon/hwmon4/temp6_label | Type: MonitorTypes::kMonTempLabel | Sensor id: 6 | Data: mem | Returning: 2 |
2024-04-26 08:52:55.461420  [INFO]: int amd::smi::Monitor::readMonitor(amd::smi::MonitorTypes, uint32_t, std::string*) | Success | Read hwmon file: /sys/class/drm/card1/device/hwmon/hwmon4/temp7_label | Type: MonitorTypes::kMonTempLabel | Sensor id: 7 | Data: mem | Returning: 2 |
2024-04-26 08:52:55.461433  [INFO]: Successfully read SYSFS file (/sys/class/drm/card1/device/hwmon/hwmon4/in0_label), returning str = vddgfx
2024-04-26 08:52:55.461437  [INFO]: int amd::smi::Monitor::readMonitor(amd::smi::MonitorTypes, uint32_t, std::string*) | Success | Read hwmon file: /sys/class/drm/card1/device/hwmon/hwmon4/in0_label | Type: MonitorTypes::kMonVoltLabel | Sensor id: 0 | Data: vddgfx | Returning: 0 |
2024-04-26 08:52:55.461447  [DEBUG]: uint32_t amd::smi::GetDrmRenderMinor(std::string) | Discovered drmRenderMinor = 129 | For drm_path = /sys/class/drm/card1/device/drm |
2024-04-26 08:52:55.461455  [DEBUG]: void amd::smi::RocmSMI::AddToDeviceList(std::string, uint64_t) | Adding to device list dev_name = card1 | path = /sys/class/drm/card1 | bdfid =<PHONE_NUMBER>3709551615 | card index = 1 |
2024-04-26 08:52:55.461458  [DEBUG]: uint32_t amd::smi::RocmSMI::DiscoverAmdgpuDevices() | Ordered system nodes seen in lookup = {
[node_id = 2; gpu_id = 50916; unique_id = 0; location_id = 2304], }
2024-04-26 08:52:55.461461  [TRACE]: rsmi_status_t rsmi_dev_compute_partition_get(uint32_t, char*, uint32_t)| ======= start =======, dv_ind = 1
2024-04-26 08:52:55.461468  [ERROR]: int amd::smi::Device::openSysfsFileStream(amd::smi::DevInfoTypes, T*, const char*) [with T = std::basic_ifstream<char>] | Issue: File did not exist - SYSFS file (/sys/class/drm/card1/device/current_compute_partition) for DevInfoInfoType (amd::smi::kDevComputePartition), returning 2
2024-04-26 08:52:55.461471  [ERROR]: Could not read device info string for DevInfoType (amd::smi::kDevComputePartition), returning 2
2024-04-26 08:52:55.461474  [ERROR]: rsmi_status_t rsmi_dev_compute_partition_get(uint32_t, char*, uint32_t) | ======= end =======  | Fail  | Device #: 1 | Type: amd::smi::kDevComputePartition | Cause: could not retrieve current compute partition | Returning = RSMI_STATUS_NOT_SUPPORTED: This function is not supported in the current environment. |
2024-04-26 08:52:55.461478  [TRACE]: rsmi_status_t rsmi_dev_unique_id_get(uint32_t, uint64_t*)| ======= start =======
2024-04-26 08:52:55.461484  [ERROR]: int amd::smi::Device::openSysfsFileStream(amd::smi::DevInfoTypes, T*, const char*) [with T = std::basic_ifstream<char>] | Issue: File did not exist - SYSFS file (/sys/class/drm/card1/device/unique_id) for DevInfoInfoType (amd::smi::kDevUniqueId), returning 2
2024-04-26 08:52:55.461490  [ERROR]: Could not read device info string for DevInfoType (amd::smi::kDevUniqueId), returning 2
2024-04-26 08:52:55.461493  [DEBUG]: uint32_t amd::smi::RocmSMI::DiscoverAmdgpuDevices() | rsmi_dev_unique_id_get(cardId, &device_uuid) was not successful, continue..
2024-04-26 08:52:55.461498  [DEBUG]: bool amd::smi::isAMDGPU(std::string) | device_path = /sys/class/drm/card2 is an amdgpu device -  FALSE
2024-04-26 08:52:55.461502  [DEBUG]: bool amd::smi::isAMDGPU(std::string) | device_path = /sys/class/drm/card3 is an amdgpu device -  FALSE
2024-04-26 08:52:55.461505  [DEBUG]: bool amd::smi::isAMDGPU(std::string) | device_path = /sys/class/drm/card4 is an amdgpu device -  FALSE
2024-04-26 08:52:55.461509  [DEBUG]: bool amd::smi::isAMDGPU(std::string) | device_path = /sys/class/drm/card5 is an amdgpu device -  FALSE
2024-04-26 08:52:55.461513  [DEBUG]: bool amd::smi::isAMDGPU(std::string) | device_path = /sys/class/drm/card6 is an amdgpu device -  FALSE
2024-04-26 08:52:55.461516  [DEBUG]: bool amd::smi::isAMDGPU(std::string) | device_path = /sys/class/drm/card7 is an amdgpu device -  FALSE
2024-04-26 08:52:55.461520  [DEBUG]: bool amd::smi::isAMDGPU(std::string) | device_path = /sys/class/drm/card8 is an amdgpu device -  FALSE
2024-04-26 08:52:55.461524  [DEBUG]: bool amd::smi::isAMDGPU(std::string) | device_path = /sys/class/drm/card9 is an amdgpu device -  FALSE
2024-04-26 08:52:55.461530  [TRACE]: void amd::smi::RocmSMI::Initialize(uint64_t) | [before] device->path() = /sys/class/drm/card0
 | bdfid = 768
 | device->bdfid() =<PHONE_NUMBER>3709551615
 | (legacy/pcie card) setting device->set_bdfid(bdfid)
2024-04-26 08:52:55.461533  [TRACE]: void amd::smi::RocmSMI::Initialize(uint64_t) | [after] device->path() = /sys/class/drm/card0
 | bdfid = 768
 | device->bdfid() = 768
 | final update: device->bdfid() holds correct device bdf
2024-04-26 08:52:55.461538  [TRACE]: void amd::smi::RocmSMI::Initialize(uint64_t) | [before] device->path() = /sys/class/drm/card1
 | bdfid = 2304
 | device->bdfid() =<PHONE_NUMBER>3709551615
 | (legacy/pcie card) setting device->set_bdfid(bdfid)
2024-04-26 08:52:55.461541  [TRACE]: void amd::smi::RocmSMI::Initialize(uint64_t) | [after] device->path() = /sys/class/drm/card1
 | bdfid = 2304
 | device->bdfid() = 2304
 | final update: device->bdfid() holds correct device bdf
2024-04-26 08:52:55.461543  [DEBUG]: void amd::smi::RocmSMI::Initialize(uint64_t) Sort index based on BDF.
2024-04-26 08:52:55.462037  [DEBUG]: int amd::smi::read_node_properties(uint32_t, std::string, uint64_t*) | File: /sys/class/kfd/kfd/topology/nodes/1/properties | Successfully read node #1 for property_name = gfx_target_version | Data (gfx_target_version) * val = 110000 | return = 0 |
2024-04-26 08:52:55.462047  [DEBUG]: int amd::smi::KFDNode::get_gfx_target_version(uint64_t*) | File: /sys/class/kfd/kfd/topology/nodes/1/properties | Successfully read node #1 for gfx_target_version | Data (gfx_target_version) *gfx_target_version = 110000 | return = 0 |
2024-04-26 08:52:55.462130  [DEBUG]: int amd::smi::read_node_properties(uint32_t, std::string, uint64_t*) | File: /sys/class/kfd/kfd/topology/nodes/2/properties | Successfully read node #2 for property_name = gfx_target_version | Data (gfx_target_version) * val = 100301 | return = 0 |
2024-04-26 08:52:55.462137  [DEBUG]: int amd::smi::KFDNode::get_gfx_target_version(uint64_t*) | File: /sys/class/kfd/kfd/topology/nodes/2/properties | Successfully read node #2 for gfx_target_version | Data (gfx_target_version) *gfx_target_version = 100301 | return = 0 |
2024-04-26 08:52:55.462143  [INFO]: ====== Gathered system details ============
SYSTEM NAME: Linux
OS DISTRIBUTION: Ubuntu 22.04.4 LTS
NODE NAME: ubuntu-server-220403
RELEASE: 6.5.0-28-generic
VERSION: #29~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Thu Apr  4 14:39:20 UTC 2
MACHINE TYPE: x86_64
DOMAIN: (none)
ENDIANNESS: Little Endian, multi-bit symbols encoded as little endian (LSB first)
ROCM BUILD TYPE: debug
ROCM-SMI-LIB PATH: /opt/rocm-6.0.2/libexec/rocm_smi/../../lib/librocm_smi64.so.6
ROCM-SMI-LIB BUILD DATE: Thu Feb  8 23:54:30 2024
ROCM ENV VARIABLES:
        RSMI_DEBUG_BITFIELD = <undefined>
        RSMI_DEBUG_DRM_ROOT_OVERRIDE = <undefined>
        RSMI_DEBUG_HWMON_ROOT_OVERRIDE = <undefined>
        RSMI_DEBUG_PP_ROOT_OVERRIDE = <undefined>
        RSMI_DEBUG_INFINITE_LOOP = <undefined>
        RSMI_LOGGING = 1
        RSMI_LOGGING (are logs on) = TRUE
        RSMI_DEBUG_ENUM_OVERRIDE = {}
AMD GFX VERSIONS:
        Device[0]: gfx110000
        Device[1]: gfx100301

2024-04-26 08:52:55.462152  [DEBUG]: void amd::smi::RocmSMI::Initialize(uint64_t) | current device paths = Vector = {/sys/class/drm/card0, /sys/class/drm/card1}

2024-04-26 08:52:55.462232  [TRACE]: rsmi_status_t rsmi_dev_vendor_id_get(uint32_t, uint16_t*)| ======= start =======
2024-04-26 08:52:55.462249  [INFO]: int amd::smi::Device::openSysfsFileStream(amd::smi::DevInfoTypes, T*, const char*) [with T = std::basic_ifstream<char>] | Successfully opened SYSFS file (/sys/class/drm/card0/device/vendor) for DevInfoInfoType (amd::smi::kDevVendorID)
2024-04-26 08:52:55.462276  [INFO]: int amd::smi::Device::readDevInfoStr(amd::smi::DevInfoTypes, std::string*)Successfully read device info string for DevInfoType (amd::smi::kDevVendorID): 0x1002 |  File stream is closed | [GOOD] No bad bit read, successful read operation | [GOOD] No fail - Successful read operation | [GOOD] No eof error - Successful read operation | [GOOD] read good - Successful read operation
2024-04-26 08:52:55.462332  [TRACE]: rsmi_status_t rsmi_dev_fan_speed_set(uint32_t, uint32_t, uint64_t)| ======= start =======
2024-04-26 08:52:55.462337  [TRACE]: rsmi_status_t rsmi_dev_fan_speed_max_get(uint32_t, uint32_t, uint64_t*)| ======= start =======
2024-04-26 08:52:55.462383  [INFO]: Successfully read SYSFS file (/sys/class/drm/card0/device/hwmon/hwmon3/pwm1_max), returning str = 255
2024-04-26 08:52:55.462400  [INFO]: int amd::smi::Monitor::readMonitor(amd::smi::MonitorTypes, uint32_t, std::string*) | Success | Read hwmon file: /sys/class/drm/card0/device/hwmon/hwmon3/pwm1_max | Type: MonitorTypes::kMonMaxFanSpeed | Sensor id: 1 | Data: 255 | Returning: 0 |
2024-04-26 08:52:55.462479  [INFO]: Successfully wrote to SYSFS file (/sys/class/drm/card0/device/hwmon/hwmon3/pwm1_enable) string = 1
2024-04-26 08:52:55.462526  [INFO]: Successfully wrote to SYSFS file (/sys/class/drm/card0/device/hwmon/hwmon3/pwm1) string = 255
2024-04-26 08:52:55.463207  [TRACE]: rsmi_status_t rsmi_dev_fan_speed_set(uint32_t, uint32_t, uint64_t)| ======= start =======
2024-04-26 08:52:55.463216  [TRACE]: rsmi_status_t rsmi_dev_fan_speed_max_get(uint32_t, uint32_t, uint64_t*)| ======= start =======
2024-04-26 08:52:55.463269  [INFO]: Successfully read SYSFS file (/sys/class/drm/card1/device/hwmon/hwmon4/pwm1_max), returning str = 255
2024-04-26 08:52:55.463291  [INFO]: int amd::smi::Monitor::readMonitor(amd::smi::MonitorTypes, uint32_t, std::string*) | Success | Read hwmon file: /sys/class/drm/card1/device/hwmon/hwmon4/pwm1_max | Type: MonitorTypes::kMonMaxFanSpeed | Sensor id: 1 | Data: 255 | Returning: 0 |
2024-04-26 08:52:55.858970  [INFO]: Successfully wrote to SYSFS file (/sys/class/drm/card1/device/hwmon/hwmon4/pwm1_enable) string = 1
2024-04-26 08:52:55.859151  [INFO]: Successfully wrote to SYSFS file (/sys/class/drm/card1/device/hwmon/hwmon4/pwm1) string = 255

you can try and trace it to the sysfs file and then edit it directly: sudo strace --trace=file --successful-only /opt/rocm/bin/rocm-smi --setfan 100% 2>&1 | grep sys/class
This will return a bunch of stuff and point you to something like: /sys/class/drm/card1/device/hwmon/hwmon2/pwm1
See if you can set these manually.
I'm expecting that this is a driver issue and amdsmi/rocmsmi can't do anything about it.
P.S. You can also run it with sudo RSMI_LOGGING=1 /opt/rocm/bin/rocm-smi --setfan 100%. it will populate /var/log/rocm_smi_lib/ROCm-SMI-lib.log. =3 will additionally print to console.

I try to reinstall all the Ubuntu system and amdgpu driver and ROCm. It still does NOT work.
$ sudo amd-smi set -f 100% -g 0

            ******WARNING******

            Operating your AMD GPU outside of official AMD specifications or outside of
            factory settings, including but not limited to the conducting of overclocking,
            over-volting or under-volting (including use of this interface software,
            even if such software has been directly or indirectly provided by AMD or otherwise
            affiliated in any way with AMD), may cause damage to your AMD GPU, system components
            and/or result in system failure, as well as cause other problems.

            Please use this utility with caution.

Do you accept these terms? [y/n] y
amdsmi.amdsmi_exception.AmdSmiLibraryException: Error code:
        2 | AMDSMI_STATUS_NOT_SUPPORTED - Feature not supported

The above exception was the direct cause of the following exception:

ValueError: Unable to set fan speed 255 on GPU ID: 0 BDF:0000:03:00.0

and
$ rocm-smi

==================================== ROCm System Management Interface ====================================
============================================== Concise Info ==============================================
Device  [Model : Revision]    Temp    Power  Partitions      SCLK  MCLK   Fan  Perf  PwrCap  VRAM%  GPU%
        Name (20 chars)       (Edge)  (Avg)  (Mem, Compute)
==========================================================================================================
0       [0x7901 : 0xc8]       30.0°C  10.0W  N/A, N/A        0Mhz  96Mhz  0%   auto  327.0W    0%   0%
        0x744c
==========================================================================================================
========================================== End of ROCm SMI Log ===========================================

@Looong01 Apologies for the lack of response.  Can you please check if your issue still exist with the latest ROCm 6.2? If not, please close the ticket. Thanks!

@Looong01 Apologies for the lack of response. Can you please check if your issue still exist with the latest ROCm 6.2? If not, please close the ticket. Thanks!

No, the problem is still here.
$ sudo amd-smi set -g 0 -f 80%

            ******WARNING******

            Operating your AMD GPU outside of official AMD specifications or outside of
            factory settings, including but not limited to the conducting of overclocking,
            over-volting or under-volting (including use of this interface software,
            even if such software has been directly or indirectly provided by AMD or otherwise
            affiliated in any way with AMD), may cause damage to your AMD GPU, system components
            and/or result in system failure, as well as cause other problems.

            Please use this utility with caution.

Do you accept these terms? [y/n] y
amdsmi.amdsmi_exception.AmdSmiLibraryException: Error code:
        2 | AMDSMI_STATUS_NOT_SUPPORTED - Feature not supported

The above exception was the direct cause of the following exception:

ValueError: Unable to set fan speed 204 on GPU ID: 0 BDF:0000:03:00.0

@Looong01 Internal ticket is there to get this issue resolved. Thanks!

@Looong01 Good catch, I'm unable to set my 7900 XTX as well, while my 6900 is working. We'll follow up with the driver team and get this resolved.


[bug] Custom LLM_Callable for ProvenanceV1 causes ValueError: invalid syntax during validator parse_token

Hello! I'm trying out the ProvenanceV1 validator using a custom llm_callable which conforms to the signature of input string -> output string. It's calling Google's VertexAI text generation endpoint under the hood which works for me. The following
vertexai_llm = ...

def predict_function(prompt: str) -> str:
    response = vertexai_llm.text_generative_model.predict(prompt)
    return response.text

guard_1 = Guard.from_string(
    validators=[
        ProvenanceV1(
            validation_method="sentence",
            llm_callable=predict_function,
            top_k=3,
            max_tokens=2,
            on_fail="fix",
        )
    ],
    description="testmeout",
)

When running I get an error I have a lot of trouble breaking apart into what's happening and what do I need to do to remedy the issue. It seems like somewhere near reasking the library is running an eval on the function?
---------------------------------------------------------------------------
SyntaxError                               Traceback (most recent call last)
File /usr/local/lib/python3.10/site-packages/guardrails/schema.py:144, in FormatAttr.parse_token(cls, token)
    142 try:
    143     # Evaluate the Python expression.
--> 144     t = eval(t)
    145 except (ValueError, SyntaxError, NameError) as e:

SyntaxError: invalid syntax (<string>, line 1)

During handling of the above exception, another exception occurred:

ValueError                                Traceback (most recent call last)
Cell In[41], line 6
      2     response = vertexai_llm.text_generative_model.predict(prompt)
      3     return response.text
----> 6 guard_1 = Guard.from_string(
      7     validators=[
      8         ProvenanceV1(
      9             validation_method="sentence",  # can be "sentence" or "full"
     10             llm_callable=predict_function,  # as explained above
     11             # llm_callable="gpt-3.5-turbo",  # as explained above
     12             top_k=3,  # number of chunks to retrieve
     13             max_tokens=500,
     14             on_fail="fix",
     15         )
     16     ],
     17     description="testmeout",
     18 )

File /usr/local/lib/python3.10/site-packages/guardrails/guard.py:203, in Guard.from_string(cls, validators, description, prompt, instructions, reask_prompt, reask_instructions, num_reasks)
    180 @classmethod
    181 def from_string(
    182     cls,
   (...)
    189     num_reasks: int = None,
    190 ) -> "Guard":
    191     """Create a Guard instance for a string response with prompt,
    192     instructions, and validations.
    193
   (...)
    201         num_reasks (int, optional): The max times to re-ask the LLM for invalid output.
    202     """  # noqa
--> 203     rail = Rail.from_string_validators(
    204         validators=validators,
    205         description=description,
    206         prompt=prompt,
    207         instructions=instructions,
    208         reask_prompt=reask_prompt,
    209         reask_instructions=reask_instructions,
    210     )
    211     return cls(rail, num_reasks=num_reasks)

File /usr/local/lib/python3.10/site-packages/guardrails/rail.py:145, in Rail.from_string_validators(cls, validators, description, prompt, instructions, reask_prompt, reask_instructions)
    127 @classmethod
    128 def from_string_validators(
    129     cls,
   (...)
    135     reask_instructions: Optional[str] = None,
    136 ):
    137     xml = generate_xml_code(
    138         prompt=prompt,
    139         instructions=instructions,
   (...)
    143         description=description,
    144     )
--> 145     return cls.from_xml(xml)

File /usr/local/lib/python3.10/site-packages/guardrails/rail.py:99, in Rail.from_xml(cls, xml)
     97 if reask_instructions is not None:
     98     reask_instructions = reask_instructions.text
---> 99 output_schema = cls.load_output_schema(
    100     raw_output_schema,
    101     reask_prompt=reask_prompt,
    102     reask_instructions=reask_instructions,
    103 )
    105 # Parse instructions for the LLM. These are optional but if given,
    106 # LLMs can use them to improve their output. Commonly these are
    107 # prepended to the prompt.
    108 instructions = xml.find("instructions")

File /usr/local/lib/python3.10/site-packages/guardrails/rail.py:177, in Rail.load_output_schema(root, reask_prompt, reask_instructions)
    175 # If root contains a `type="string"` attribute, then it's a StringSchema
    176 if "type" in root.attrib and root.attrib["type"] == "string":
--> 177     return StringSchema(
    178         root,
    179         reask_prompt_template=reask_prompt,
    180         reask_instructions_template=reask_instructions,
    181     )
    182 return JsonSchema(
    183     root,
    184     reask_prompt_template=reask_prompt,
    185     reask_instructions_template=reask_instructions,
    186 )

File /usr/local/lib/python3.10/site-packages/guardrails/schema.py:785, in StringSchema.__init__(self, root, reask_prompt_template, reask_instructions_template)
    778 def __init__(
    779     self,
    780     root: ET._Element,
    781     reask_prompt_template: Optional[str] = None,
    782     reask_instructions_template: Optional[str] = None,
    783 ) -> None:
    784     self.string_key = "string"
--> 785     super().__init__(root)
    787     # Setup reask templates
    788     self._reask_prompt_template = reask_prompt_template

File /usr/local/lib/python3.10/site-packages/guardrails/schema.py:293, in Schema.__init__(self, root, schema, reask_prompt_template, reask_instructions_template)
    291 self.root = root
    292 if root is not None:
--> 293     self.setup_schema(root)
    295 # Setup reask templates
    296 self.check_valid_reask_prompt(reask_prompt_template)

File /usr/local/lib/python3.10/site-packages/guardrails/schema.py:806, in StringSchema.setup_schema(self, root)
    804 # make root tag into a string tag
    805 root_string = ET.Element("string", root.attrib)
--> 806 self[self.string_key] = String.from_xml(root_string)

File /usr/local/lib/python3.10/site-packages/guardrails/datatypes.py:145, in DataType.from_xml(cls, element, strict)
    141 # TODO: don't want to pass strict through to DataType,
    142 # but need to pass it to FormatAttr.from_element
    143 # how to handle this?
    144 format_attr = FormatAttr.from_element(element)
--> 145 format_attr.get_validators(strict)
    147 data_type = cls({}, format_attr, element)
    148 data_type.set_children(element)

File /usr/local/lib/python3.10/site-packages/guardrails/schema.py:215, in FormatAttr.get_validators(self, strict)
    213 _validators = []
    214 _unregistered_validators = []
--> 215 parsed = self.parse().items()
    216 for validator_name, args in parsed:
    217     # Check if the validator is registered for this element.
    218     # The validators in `format` that are not registered for this element
    219     # will be ignored (with an error or warning, depending on the value of
    220     # `strict`), and the registered validators will be returned.
    221     if validator_name not in types_to_validators[self.element.tag]:

File /usr/local/lib/python3.10/site-packages/guardrails/schema.py:169, in FormatAttr.parse(self)
    166 validators = {}
    167 for token in self.tokens:
    168     # Parse the token into a validator name and a list of parameters.
--> 169     validator_name, args = self.parse_token(token)
    170     validators[validator_name] = args
    172 return validators

File /usr/local/lib/python3.10/site-packages/guardrails/schema.py:146, in FormatAttr.parse_token(cls, token)
    144             t = eval(t)
    145         except (ValueError, SyntaxError, NameError) as e:
--> 146             raise ValueError(
    147                 f"Python expression `{t}` is not valid, "
    148                 f"and raised an error: {e}."
    149             )
    150     args.append(t)
    152 return validator.strip(), args

ValueError: Python expression `<function predict_function at 0xffff4c7255a0>` is not valid, and raised an error: invalid syntax (<string>, line 1).

I'm running guardrails-ai==0.2.4 and was basing my attempts off of https://docs.guardrailsai.com/examples/provenance/#provenance-v1
The ProvenanceV1 validation works when I supply gpt-3.5-turbo as is the default. I can't immediately see what's different with the guardrail I'm building between the two - the openai_callable function defined in set_callable looks pretty identical. I can't find any examples of a custom callable besides.
While the OpenAI string model value works for me during testing I cannot use that for my application and need to use Google's instead, just to clarify!
Thanks for any help you can provide! I'll continue looking into the docs / code to figure out what's happening with the validator parsing

Hi! Your assessment is correct, this is a bug in how the feature is documented vs how it works. With the current sequencing of guard runs, validator params are serialized/deserialized before they're executed. This is not loss-less when it tries to run on callables. As a result, callable-passing via parameters isn't available through validators even though the provenancev1 validator accepts a callable of that method signature.
The fix here would be to rewrite the provenancev1 validator to accept the llm_callable as metadata instead of as a param.
This hasn't currently been prioritized, but I'll try to see if we can get it released in 0.2.5 (sometime next week). I'll return with a more concrete ETA once we have it. I'll also tag this issue as a "Good first bug", I think it's something someone can get to with limited context.

Awesome, thanks @zsimjee!

This'll be solved as part of our move away from using XML serialization internally, within the next two weeks.


fix: verify email change

What kind of change does this PR introduce?

Only update auth.identities.identity_data if auth.identities.identity_data["email"] exists

@kangmingtay Why is this necessary tho?

@hf it's actually more of a refactor because i noticed we're updating the identity_data blindly when we only need to do it if the email changes


fix(rest): handle FastBuffer in toBlob

Buffer.from function create a "pooled" FastBuffer if the byteLength is under Buffer.poolSize >>> 1 (which is equal to 4096 in default case).
This FastBuffer creation cause the buf.buffer ArrayBuffer to have a portion of the memory with the size of Buffer.poolSize (which is 8192 in default case) and not the real content of the Buffer.
This commit fix the rest toBlob utils function to handle these FastBuffer and return the correct data.

checked this on my phone, seems good. I'm gonna take test this out later to make ensure it works and doesn't break anything.

checked this on my phone, seems good. I'm gonna take test this out later to make ensure it works and doesn't break anything.

while i did not mean to rewrite this implementation, i think it'd be simpler to just perform the logic you have to all buffer objects and support the buffer object explicitly instead of implicitly

I did this trick for performance. When a Uint8Array receive an ArrayBuffer or a TypedArray it will take his memory allocs without copying anything, but when he receive any other type of data that is iterable, it will iterate and copy all the content of the array-like object. By understanding this, the Uint8Array in the isFastBuffer actually don't convert and use the memory allocations of the ArrayBuffer sent, that make the compare very fast. But the Uint8Array on the toBlob actually create new mem allocs and copy the data. The thing that letting all Buffer goes on this Uint8Array convertion will make it 2 times slower, cause there is Buffer => Uint8Array, then ArrayBuffer => Blob, and not only ArrayBuffer => Blob if the Buffer is not pooled. This is confirmed by the perf test i did here https://imgur.com/a/XqixYXw

what do you think of just using return new Blob([data]);, since i just learned that all Buffer/Uint8Array/ArrayBuffer objects seem to be convertable directly to a blob? I did a couple of minor tests and it seems to function across runtimes and run faster, since there's less work to be done.

Go for that, seems good.


Error ld cannot find -lGL when compiling in Ubuntu 14.04

As title says, I'm trying to compile godot in Ubuntu 14.04
I have run the command:
apt-get install scons pkg-config libx11-dev libxcursor-dev build-essential libasound2-dev libfreetype6-dev libgl1-mesa-dev libglu-dev libssl-dev libxinerama-dev

and I thought I had all dependencies needed.. but it turns out I don't.
After running:
scons platform=x11
It returns with error:
/usr/bin/ld: cannot find -lGL
collect2: error: ld returned 1 exit status
scons: *** [bin/godot.x11.tools.64] Error 1
scons: building terminated because of errors.

Can someone help me debug this problem ? I don't know which library GL is.

If it's talking about OpenGL, I think I have it installed. Running
glxinfo | grep "OpenGL version"
yields:
OpenGL version string: 4.4.12967 Compatibility Profile Context 14.20

You should have a file named libGL.so on your system.  This is what -lGL is looking for.  Mine's in /usr/lib/libGL.so in Ubuntu 13.10.  I imagine it's the same in 14.04, but I'm just assuming.  Do you have this file?

@romulox-x Nop, I don't have no such file. However, I do have: /usr/lib/fglrx/libGL.so (ATI file)

In case anyone has the same problem in the future: I managed to solve it by creating a symlink to the exiting libGL.so
sudo ln -s /usr/lib/fglrx/libGL.so /usr/lib/libGL.so
Then restarted, and run again scons platform=x11
Now it built whit no problems.

Alternatively, LD_LIBRARY_PATH can be set to include /usr/lib/fglrx.


Close SpillableBatch to avoid leaks

this fixes #4730
I did a bit of cleanup for some of the code, but the leaks really were that the SpillableColumnBatch instances that were inserted into the queue were never closed when they were dequeued.

build


Whenever I iniate the job at publisher the Log and SQL Agent Failed to start.

I have Azure Managed Instance as my publisher, I have followed the above steps mentioned bu whenver I try to create the publisher the SQL Agents failed to start, I have opened in the inbound and outbound port 445 for managed instance, still I am getting agents failed to start, can anyone tell me whats wrong here.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: d7cd1942-8ac7-eae9-4ac8-eb716ecd7b7b
Version Independent ID: 559730f0-71fd-b16c-ecac-56954d5f2f64
Content: Configure replication in Azure SQL Database Managed Instance
Content Source: articles/sql-database/replication-with-sql-database-managed-instance.md
Service: sql-database
GitHub Login: @allenwux
Microsoft Alias: xiwu

@cubikca I am still struglling with it.

@MashaMSFT for awareness

Hi @Anmolgan81 , can you please confirm which version of SQL Server you're  using? In another thread, I saw a mention of SQL 2008, and unfortunately that's not supported. Using an older version of SQL can cause connectivity issues. Publishing to objects in Azure (standalone and manged instance) is only supported from these versions of SQL:

SQL Server 2019 (preview)
SQL Server 2016 to SQL 2017
SQL Server 2014 SP1 CU3 or greater (12.00.4427)
SQL Server 2014 RTM CU10 (12.00.2556)
SQL Server 2012 SP3 or greater (11.0.6020)
SQL Server 2012 SP2 CU8 (11.0.5634.0)

If your SQL Server is older, please try utilizing the republishing  method. If you're on a supported version of SQL Server, then your approach in opening a ticket with support is the best as we may need investigate your situation further. Thanks!

I am using sql server 2008 to azure sql managed instance migration but I think transactional replication is still not supported in that case, but in this scenario we are talking about azure managed instance to azure sql database migration.

That is correct @Anmolgan81, that is what I was trying to communicate #23779.

@Mike-Ubezzi-MSFT I was confused, I though that those instructions are for Azure SQL Database and not SQL Managed Instance, the document should be accurate I suppose.

I am pushing a PR to add some clarity to this topic
From: Anmolgan81<EMAIL_ADDRESS>Sent: Wednesday, February 6, 2019 11:00 PM
To: MicrosoftDocs/azure-docs<EMAIL_ADDRESS>Cc: Carl Rabeler<EMAIL_ADDRESS>Comment<EMAIL_ADDRESS>Subject: Re: [MicrosoftDocs/azure-docs] Whenever I iniate the job at publisher the Log and SQL Agent Failed to start. (#23809)
@Mike-Ubezzi-MSFThttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMike-Ubezzi-MSFT&data=02|01|Carl.Rabeler%40microsoft.com|595a6895e5874b752d4008d68cc9d524|72f988bf86f141af91ab2d7cd011db47|1|0|636851195826097149&sdata=sWBmghERmUXZ4nNt6DtVn1Vsiv%2BfLv%2BEUQyXYmEmynQ%3D&reserved=0 I was confused, I though that those instructions are for Azure SQL Database and not SQL Managed Instance, the document should be accurate I suppose.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoftDocs%2Fazure-docs%2Fissues%2F23809%23issuecomment-461308528&data=02|01|Carl.Rabeler%40microsoft.com|595a6895e5874b752d4008d68cc9d524|72f988bf86f141af91ab2d7cd011db47|1|0|636851195826107153&sdata=oKZLgY08O3vqBkJljWh7tDH3louzoDSeEiHDphenRAc%3D&reserved=0, or mute the threadhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAMCBn5cDHOfbf10Nz5BLRWtDkemFils-ks5vK87cgaJpZM4abCGA&data=02|01|Carl.Rabeler%40microsoft.com|595a6895e5874b752d4008d68cc9d524|72f988bf86f141af91ab2d7cd011db47|1|0|636851195826107153&sdata=nHgq%2B7%2F1pjdNYsITlMxsd%2B67sIW5AgdQSOp0QBw6HuM%3D&reserved=0.

@CarlRabeler Please let me know when the PR is completed.

done, please close @Mike-Ubezzi-MSFT

@Anmolgan81 We will now proceed to close this thread. If there are further questions regarding this matter, please comment and we will gladly continue the discussion.

For anyone else who encounters this issue, this is the recommended resolution by Microsoft:
"On managed instances, you may see initial connectivity issues immediately after configuring your publication and subscriptions."
We should increase login timeout period and force TCP protocol as follows:
-- Increase the default login timeouts for all jobs
update msdb..sysjobsteps set command = command + N' -LoginTimeout 150'
where subsystem in ('Distribution','LogReader','Snapshot') and command not like '%-LoginTimeout %'
-- Explicitly set the tcp protocol for the connections:
update msdb..sysjobsteps set command = replace(command,' -Distributor [',' -Distributor [tcp:')
where subsystem in ('Distribution','LogReader','Snapshot') and command not like '% -Distributor [tcp:%' escape ''
GO
This resolved the issue for me. Thanks.

Thank you so much for this!!! I was racking my brain for almost a whole work day!  Microsoft should include this in the article.  Managed instances don't support Named Pipes!!!

For anyone else who encounters this issue, this is the recommended resolution by Microsoft:
"On managed instances, you may see initial connectivity issues immediately after configuring your publication and subscriptions."
We should increase login timeout period and force TCP protocol as follows:
-- Increase the default login timeouts for all jobs
update msdb..sysjobsteps set command = command + N' -LoginTimeout 150'
where subsystem in ('Distribution','LogReader','Snapshot') and command not like '%-LoginTimeout %'
-- Explicitly set the tcp protocol for the connections:
update msdb..sysjobsteps set command = replace(command,' -Distributor [',' -Distributor [tcp:')
where subsystem in ('Distribution','LogReader','Snapshot') and command not like '% -Distributor [tcp:%' escape ''
GO
This resolved the issue for me. Thanks.
Thank you so much for this!!! I was racking my brain for almost a whole work day!  Microsoft should include this in the article.  Managed instances don't support Named Pipes!!!

Also, you will need to stop and start the log reader agent, snapshot agent, and reinitialize the subscribers.

@MashaMSFT please review for doc update


Support any kubernetes cluster

[x] Add a comnand named hossted k8s import
[ ] If it will see a docker-compose in the same directory it is in docker-compose import mode  - #48
[ ] Prompt the user for an email
[ ] In k8s mode wrap the hossted-operator installation and send email
[ ] Collect the url/token result from API and show to user

We are pushing current context only - with less interaction
No CRD needed or planned

We have involved to wrap the hossted operator installation in this case.


added 'dig search' option for clustrer ip resolving (important for k8s)

without +search option dig is unable to find containers ip addresses in k8s env.

Thank you for your contribution.  Can you provide me an example of resolv.conf file in k8s env ?