Month: June 2024
Simulink Real time explorer
Why i dont get the same simulink blocs and interface when i run slrtExplorer in matlab R2020b as my Friend despite that we have the same version of matlabWhy i dont get the same simulink blocs and interface when i run slrtExplorer in matlab R2020b as my Friend despite that we have the same version of matlab Why i dont get the same simulink blocs and interface when i run slrtExplorer in matlab R2020b as my Friend despite that we have the same version of matlab transferred MATLAB Answers — New Questions
Using CZI files within the Medical Image Labeler
I have some CZI files I want to use within the medical image labeler app, but this not currently an accepted file format. What would be the best way for me to convert them into a format the app can read?I have some CZI files I want to use within the medical image labeler app, but this not currently an accepted file format. What would be the best way for me to convert them into a format the app can read? I have some CZI files I want to use within the medical image labeler app, but this not currently an accepted file format. What would be the best way for me to convert them into a format the app can read? medical image labeler MATLAB Answers — New Questions
Matab is very slow in processing figures: might it be caused by NVidia Optimus?
Hi all,
I have a laptop with the following configuration:
CPU: i7-11850H
RAM: 32GB
GPUs: Intel UHD graphics and NVIDIA RTX A2000
I notice that my laptos is pretty slow especially when managing figures. Indeed, by running bench command, the relative speed is 5.78 (this is the output of bench command 0.8408 0.3923 0.3292 0.6592 6.4034 7.0999) and my system lag hugely with respect the reference machines in 2-D and 3-D performance. When running bench command, the CPU usage peaked 18%. From this data, I believe that my system mostly run with Intel graphics rather on on my NVidia. Is that possible to verify which GPU card is running when Matlab is processing?
Thanks for your help.Hi all,
I have a laptop with the following configuration:
CPU: i7-11850H
RAM: 32GB
GPUs: Intel UHD graphics and NVIDIA RTX A2000
I notice that my laptos is pretty slow especially when managing figures. Indeed, by running bench command, the relative speed is 5.78 (this is the output of bench command 0.8408 0.3923 0.3292 0.6592 6.4034 7.0999) and my system lag hugely with respect the reference machines in 2-D and 3-D performance. When running bench command, the CPU usage peaked 18%. From this data, I believe that my system mostly run with Intel graphics rather on on my NVidia. Is that possible to verify which GPU card is running when Matlab is processing?
Thanks for your help. Hi all,
I have a laptop with the following configuration:
CPU: i7-11850H
RAM: 32GB
GPUs: Intel UHD graphics and NVIDIA RTX A2000
I notice that my laptos is pretty slow especially when managing figures. Indeed, by running bench command, the relative speed is 5.78 (this is the output of bench command 0.8408 0.3923 0.3292 0.6592 6.4034 7.0999) and my system lag hugely with respect the reference machines in 2-D and 3-D performance. When running bench command, the CPU usage peaked 18%. From this data, I believe that my system mostly run with Intel graphics rather on on my NVidia. Is that possible to verify which GPU card is running when Matlab is processing?
Thanks for your help. matlab MATLAB Answers — New Questions
Path Traversal Issue
public bool Example (string getinput)
{
var example = System.Web.Security.AntiXss.AntiXssEncoder.HtmlFormUrlEncode(getinput);
}
Method Example gets dynamic data from the getinput element.
This element’s value then flows through the code and is eventually used in a file path for local disk access in another log file. This may cause a Path Traversal vulnerability.
Here we used AntiXssEncoder to the getinput but still we have the path traversal vulnerability is there any solution for that.
public bool Example (string getinput){var example = System.Web.Security.AntiXss.AntiXssEncoder.HtmlFormUrlEncode(getinput);}Method Example gets dynamic data from the getinput element. This element’s value then flows through the code and is eventually used in a file path for local disk access in another log file. This may cause a Path Traversal vulnerability. Here we used AntiXssEncoder to the getinput but still we have the path traversal vulnerability is there any solution for that. Read More
Windows Server 2025 Storage Performance with Diskspd
Windows Server 2025 is the most secure and performant release yet! Download the evaluation now!
Looking to migrate from VMware to Windows Server 2025? Contact your Microsoft account team!
Looking to migrate from VMware to Windows Server 2025? Contact your Microsoft account team!
Windows Server 2025 Storage Performance with Diskspd
Hi Folks – Dan Cuomo here to talk about some improvements in Diskspd storage measurement and the improvements you’ll see in Windows Server 2025 storage performance.
If you manage on-premises servers, you know one of the final tests you run before going to production is a performance test. You want to ensure that when you migrate virtual machines to that host, or you install SQL server on that machine, that you’re going to get the expected IOPS, the expected latency, or whatever other metrics you deem important for your business’ workloads.
So, after all the group policies have been applied, firewall rules are set, agents are installed and configured (or anything else you do in your deployment playbook), you download Diskspd, NTTTCP, and other performance testing tools you use to test this server compared to your baseline (if you don’t do this, you should be!).
Having this performance baseline allows you to answer questions like, “Is this cluster ready for production” or “Is my VM performing as expected on this hardware?” Without a solid performance baseline, you simply cannot answer these questions with confidence. In Azure, we operate some of the most performance demanding workloads in the world, so it is equally important for Microsoft to understand the storage performance of our servers. To do this, teams across Microsoft use Diskspd, our in-house developed and publicly available storage measurement tool. We continually improve Diskspd’s measurement capability so both you and our internal Microsoft teams can be confident and informed as you’re running your Windows Server workloads.
In this article, we’ll discuss two significant improvements (known as Batched Completions and Look-a-sides) in Diskspd measurement and what you need to know as a result. But before we begin, let’s put your mind at ease. Nothing is getting worse!
To that end, you may be wondering about the genesis of these improvements. Diskspd is being updated to handle modern workloads and hardware like NVMe. Our storage stack in Windows Server 2025 was also updated to leverage advances in NVMe storage (you can hear more about the storage performance improvements in Windows Server 2025 here and here)! During our testing of these capabilities, we improved our methods of latency measurement and found that we were now hitting the disk device limits when using Windows Server 2025!
The changes outlined in this article are available in Diskspd 2.2 and later. Download now!
New: Batched Completions
First, some background. When Diskspd starts, you specify the -o parameter which indicates the number of outstanding I/O requests to keep “in-flight.” If you specify -o 1 for example, Diskspd would issue one I/O, wait for its completion, then reissue another I/O. The higher the number of outstanding I/O’s, the more taxing in terms of performance requirements on the physical hardware.
Let’s use an analogy to understand how Diskspd measurement accuracy is improved with batched completions.
It’s that time of the day again – time to check the mailbox. You walk to the mailbox and find that there are 16 letters ready for you to pick up before you return to your home. Unless you’re counting steps for fitness-tracking, you’ll grab all the mail in the mailbox at one time before returning. How inefficient would it be to retrieve only one piece of mail from the mailbox, return to your home, read it, then go and get the next piece of mail from the mailbox again?! But that’s how Diskspd historically worked without batched completions.
Previously Diskspd would issue the requested number of I/Os (T0), then receive and record one I/O at a time (T1), then reissue that I/O (T2) before receiving and recording the other completed I/O (T3) even though it completed at the same time. This is the equivalent of taking one letter out of the mailbox, walking back to the house, reading and writing a response to the letter, then walking back to the mailbox, and picking up the next letter <repeat until all letters (I/Os) are read from the mailbox>. Historically, this wasn’t a big problem because disks simply weren’t fast enough for this issue to be observed anyway.
The processing of completed I/Os one at a time caused Diskspd to report higher storage latency than you could actually achieve on your system. Simply put, as disks have become faster, Diskspd needed a new way to track, record, and reissue completed I/Os.
Diskspd with Batched Completions
Now, with batched completions, Diskspd will receive all completed I/Os (letters in the mailbox) and record them as soon as they complete (T1). This reflects the actual time that I/Os completed and prevents Diskspd from inflating the storage latency.
To continue the mailbox example, now we walk to the mailbox once, pick up all the mail and return back inside the house. We still respond to the mail (reissue I/Os) one at a time.
New: Look-a-sides
Now let’s imagine you’re moving into a new home and have several new household items being delivered to the house. To simplify your move-in-day, you order some pizza for dinner as well.
The doorbell rings so you open your door and see the delivery truck with household items and the pizza delivery in front of your house. You take the box with all the household items, ignoring the pizza which is now sitting on your front porch getting cold, and begin to unbox everything in it. Once the box has been unpacked, you reopen your front door and pick up the pizza. For those of you that really enjoy cold pizza, this analogy might not seem like a big problem!
Diskspd recently implemented functionality called “look-a-sides” intended to address a scenario similar to the analogy above.
To understand the challenge, imagine there are 16 I/Os issued (T0) and 2 of those I/Os complete shortly after. Next, Diskspd receives I/O 1 and 2 (T1 using batched completions). While Diskspd is receiving the first set of completed I/Os, more I/Os (3 and 4) complete.
But Diskspd doesn’t record I/Os 3 and 4 as having completed yet. Instead, it continues its goal of reissuing I/Os 1 and 2. This delay in receiving and recording completed I/Os inflates the latency time measured by Diskspd unnecessarily. The more I/Os kept in-flight (the larger value for -o parameter) the more prominent this issue will become.
Diskspd with Look-a-sides
Now, with look-a-sides, Diskspd will receive I/Os 1 and 2 (T1) and begin to reissue IO 1 (T2). At the earliest possible opportunity, Diskspd will look at the completion queue to see if there are more I/Os that it can receive, and record as completed (T3).
Note: If there are no I/Os to receive, Diskspd simply moves on. In either event Diskspd continues reissuing any I/Os it has received (T4).
Recommendation #1: Re-baseline your storage performance
Since these changes can be so dramatic, you should re-baseline your storage performance using the latest version of Diskspd. Here are comparisons we ran using some representative hardware.
The numbers reinforce two things. First, the latency reduction is fairly dramatic regardless of the drive you use. The example on the right includes enterprise grade hardware. Next, you can see that the more IO’s Diskspd is told to keep in flight (Queue Depth) the more dramatic the measurement improvement.
Recommendation #2: Test IOPS and Latency Separately
There is a chance that when Diskspd performs a look-a-side it will find no additional competed I/Os. This is sort of a “Schrödinger’s cat” situation because Diskspd cannot know there are no I/O’s waiting without looking in the completion queue (look-a-side) which uses a small amount of CPU resources.
Each time Diskspd performs a latency test the extra CPU used to perform the look-a-side effects the overall amount of I/O that can be pushed and lowers the reported amount of IOPS on the system. In a simple test using single thread, random 4K reads on a consumer disk, we found that IOPS reduced nearly 6% (59.5K IOPS to 56.1K IOPS) when testing latency with look-a-sides.
So, you might be asking yourself, “can I turn look-a-sides off if I just want to test IOPS?” The good news is that look-a-sides are only enabled once you specify the latency parameter (-L) with Diskspd. Therefore we recommend you perform two separate performance tests: one for IOPS (without -L) and one for latency (with -L). When using -L, your IOPS measurements will be a bit lower than the maximum achievable on the system.
Here are some example Diskspd commands for Latency and IOPS testing:
IOPS Testing
Diskspd.exe -t8 -o8 -b4k -r -w0 -Suw
Note: This is only an example. You may need to try various values for -o to find the maximum.
Latency Testing
Diskspd.exe -t1 -o1 -b4k -r -w0 -Suw -L
Note: With the fixes here, you could also try small increases like -o2 or -o4
Summary
To keep pace with the advances in disk speeds and the improvements in Windows Server 2025, we’ve made investments in our storage performance benchmark tool to get you an accurate measure of latency. These improvements were so drastic that we recommend that you run separate performance tests for latency and IOPS and re-baseline the server performance in your environment. Remember to download the latest version of Diskspd along with Windows Server 2025 evaluation.
As always, we’d love to hear your feedback below as we continue to improve these tools.
Dan “Latency Reducer” Cuomo
Microsoft Tech Community – Latest Blogs –Read More
Simple Cybersecurity Steps Every Nonprofit Can Take Using Microsoft 365
As a nonprofit organization, it is common to think you are less likely to be targeted by cyber-attacks compared to larger, profit-driven enterprises. However, this misconception can leave you particularly vulnerable. Your organization frequently handles sensitive data, including donor information, financial records, and personal details of beneficiaries, making you an attractive target for cybercriminals. Additionally, you may operate with limited IT resources and cybersecurity knowledge, further increasing your risk.
Adversaries do not discriminate based on an organization’s size or purpose. In fact, your perceived weaker security measures can make you more appealing to attackers. Whether it’s a data breach, a phishing scam, or a ransomware attack, the consequences can be devastating, leading to loss of donor trust, financial damage, and a tarnished reputation.
Thus, implementing robust cybersecurity measures is not just a technical necessity but a critical component of your operational integrity. Protecting your digital assets ensures that you can continue your important work without interruption and maintains the trust and confidence of those who support and rely on your services.
Your granted Microsoft 365 Business Premium licenses offer a suite of cybersecurity tools that can help protect your organization from cyber threats, even if you’re not tech-savvy. This blog post will guide you through simple steps every nonprofit can implement to enhance their cybersecurity using Microsoft 365.
Enable Multi-Factor Authentication (MFA)
One of the easiest and most effective ways to secure your accounts is by enabling Multi-Factor Authentication (MFA). MFA adds an extra layer of security by requiring users to provide two or more verification factors to gain access to their accounts, which can significantly reduce the risk of unauthorized access.
Here is detailed Microsoft documentation on how to Set up multifactor authentication for users – Microsoft 365 admin | Microsoft Learn.
Use Secure Passwords
While it may seem basic, using strong, unique passwords is crucial for cybersecurity. Encourage your team to create passwords that include a mix of upper and lower-case letters, numbers, and special characters. Microsoft 365 can enforce password policies that require users to meet these criteria. To set up a password policy:
Navigate to the Microsoft 365 admin center.
Click on Settings > Security & privacy.
Select Password policy and adjust the settings to ensure strong passwords are used across your organization.
Here is detailed information on Password policy recommendations – Microsoft 365 admin | Microsoft Learn.
Regularly Update Software
Keeping your software up to date is a simple but powerful defense against cyber threats. Updates often include patches for security vulnerabilities that, if left unaddressed, could be exploited by hackers. Microsoft 365 makes it easy to keep your software up to date:
An Admin can ensure that automatic updates are turned on in the Microsoft 365 admin center Configure update settings for Microsoft 365 Apps – Deploy Office | Microsoft Learn OR
Regularly check for updates in each Microsoft 365 application by going to File >
Account > Update Options > Update Now.
Educate Your Team
Awareness and education are your best defenses against cyber threats. Conduct regular training sessions to keep your team informed about the latest cybersecurity practices and threats. Utilize resources like Microsoft 365’s Learning Pathways, the Security Skilling Hub, or Microsoft Security Virtual Training Days here Secure and Protect Nonprofit Data | Microsoft Nonprofits
Utilize Microsoft 365’s Built-in Security Features
Microsoft 365 comes with a variety of built-in security features that can help protect your data. Some key features include:
Office 365 Advanced Threat Protection: Protects your emails against new, sophisticated attacks in real time.
Data Loss Prevention (DLP): Helps prevent sensitive information from accidentally being shared outside your organization.
Azure Information Protection: Allows you to classify and protect documents and emails by applying labels.
Additional Resources
What is Microsoft 365 Business Premium – Microsoft 365 admin | Microsoft Learn
Microsoft 365 Business Premium – productivity and cybersecurity for small business
By taking these simple steps, nonprofits can significantly enhance their cybersecurity posture with Microsoft 365. Remember, the goal is to make it as difficult as possible for potential cyber threats to penetrate your organization’s defenses. With these practices in place, you can help secure your nonprofit’s data and resources, ensuring that you continue to operate effectively and safely.
Microsoft Tech Community – Latest Blogs –Read More
How to find steady-error value from the response graph? is there any command to find the steady state error from the response graph?
G(s)=5/s^2+2s+25G(s)=5/s^2+2s+25 G(s)=5/s^2+2s+25 steady-state error, control, theory MATLAB Answers — New Questions
Axis exponent causing all text in the figure to render as curves instead of text in svg
I’m using the saveas function to export a figure as an svg file. I have set the renderer to be painters but occasionally the output of text is rendered as curves in the svg file.
Everything works fine except when using greek letters in axis labels (which I have avoided) or when the axis label contains exponents automatically by MATLAB. If I delete the " x 10^5 " part manually in the figure window or in the code I include ax = gca; ax.YAxis.Exponent = 0, then the saveas works fine exporting an svg file with text rendered as text. However, this is still a hassle and I’m hoping it can be fixed.
I’m using R2024a.I’m using the saveas function to export a figure as an svg file. I have set the renderer to be painters but occasionally the output of text is rendered as curves in the svg file.
Everything works fine except when using greek letters in axis labels (which I have avoided) or when the axis label contains exponents automatically by MATLAB. If I delete the " x 10^5 " part manually in the figure window or in the code I include ax = gca; ax.YAxis.Exponent = 0, then the saveas works fine exporting an svg file with text rendered as text. However, this is still a hassle and I’m hoping it can be fixed.
I’m using R2024a. I’m using the saveas function to export a figure as an svg file. I have set the renderer to be painters but occasionally the output of text is rendered as curves in the svg file.
Everything works fine except when using greek letters in axis labels (which I have avoided) or when the axis label contains exponents automatically by MATLAB. If I delete the " x 10^5 " part manually in the figure window or in the code I include ax = gca; ax.YAxis.Exponent = 0, then the saveas works fine exporting an svg file with text rendered as text. However, this is still a hassle and I’m hoping it can be fixed.
I’m using R2024a. svg, vector graphics, curves, axis labels MATLAB Answers — New Questions
SQL Server audit
Hi,
Is it possible to query the users who performed queries on a given SQL Server table, in the event that no audit log is set, please?
Hi,Is it possible to query the users who performed queries on a given SQL Server table, in the event that no audit log is set, please? Read More
Getting my Azure bot on Bot Framework
I am getting the following error when trying to test my bot in “Test in Web Chat”:
2024-06-13 19:11:30.809 +00:00 [Error] Microsoft.AspNetCore.Server.IIS.Core.IISHttpServer: Connection ID “xxxxxxxxxxxxxxxxxxxxx”, Request ID “xxxxxxxxxxxxxxxxxxxxxxxxx”: An unhandled exception was thrown by the application.System.AggregateException: Failed to acquire token for client credentials. (AADSTS700016: Application with identifier ‘xxxxxxxxxxxxxxxxxx’ was not found in the directory ‘Bot Framework’. This can happen if the application has not been installed by the administrator of the tenant or consented to by any user in the tenant. You may have sent your authentication request to the wrong tenant.
It seems as though the issue is that my bot isn’t registered in Bot Framework. When I go to https://dev.botframework.com/bots there are no bots listed. I have double checked all my appsettings.json values and they are all correct. Note this is for a single tenant app. Any help would be appreciated.
I am getting the following error when trying to test my bot in “Test in Web Chat”: 2024-06-13 19:11:30.809 +00:00 [Error] Microsoft.AspNetCore.Server.IIS.Core.IISHttpServer: Connection ID “xxxxxxxxxxxxxxxxxxxxx”, Request ID “xxxxxxxxxxxxxxxxxxxxxxxxx”: An unhandled exception was thrown by the application.System.AggregateException: Failed to acquire token for client credentials. (AADSTS700016: Application with identifier ‘xxxxxxxxxxxxxxxxxx’ was not found in the directory ‘Bot Framework’. This can happen if the application has not been installed by the administrator of the tenant or consented to by any user in the tenant. You may have sent your authentication request to the wrong tenant. It seems as though the issue is that my bot isn’t registered in Bot Framework. When I go to https://dev.botframework.com/bots there are no bots listed. I have double checked all my appsettings.json values and they are all correct. Note this is for a single tenant app. Any help would be appreciated. Read More
OneDrive Sync keeps crashing
Hello
Please i need your help on this issue.
One of my user is having issues with OneDrive crashing and she’s unable to sync it. She had tried to log out and in again but the issue remains.
Hello Please i need your help on this issue. One of my user is having issues with OneDrive crashing and she’s unable to sync it. She had tried to log out and in again but the issue remains. Read More
Title bar and Zoom bugs
Hello
Some small bugs in the latest Canary
The title bar is wider (2650) :
And tilte bar ok (2648) :
Problem with the Zoom option (display) :
I think I’m going to upgrade to the stable version, too many new bugs for some time, and the old ones still not fixed
Hello Some small bugs in the latest Canary The title bar is wider (2650) : And tilte bar ok (2648) : Problem with the Zoom option (display) : I think I’m going to upgrade to the stable version, too many new bugs for some time, and the old ones still not fixed Read More
Why does the MathWorks Service Host create several files on my machine?
Why does the MathWorks Service Host create several files on my machine?Why does the MathWorks Service Host create several files on my machine? Why does the MathWorks Service Host create several files on my machine? MATLAB Answers — New Questions
Why does MATLAB R2021b or newer create a large directory of data for each user in ~/.MathWorks, %localappdata%MathWorks, or ~/Library/Application Support/MathWorks?
Why does MATLAB R2021b or newer create a large directory of data for each user in ~/.MathWorks, %localappdata%MathWorks, or ~/Library/Application Support/MathWorks?Why does MATLAB R2021b or newer create a large directory of data for each user in ~/.MathWorks, %localappdata%MathWorks, or ~/Library/Application Support/MathWorks? Why does MATLAB R2021b or newer create a large directory of data for each user in ~/.MathWorks, %localappdata%MathWorks, or ~/Library/Application Support/MathWorks? MATLAB Answers — New Questions
Simulink communication with a second, real time process on the same Windows PC
For a non-Simulink real time process running on a Windows PC is UDP the best way to communicate with Simulink running on the same PC? Is Simulink Desktop Real-Time the best product for this?For a non-Simulink real time process running on a Windows PC is UDP the best way to communicate with Simulink running on the same PC? Is Simulink Desktop Real-Time the best product for this? For a non-Simulink real time process running on a Windows PC is UDP the best way to communicate with Simulink running on the same PC? Is Simulink Desktop Real-Time the best product for this? udp, simulink, windows pc, separate process MATLAB Answers — New Questions
Why is the MathWorks Service Host causing issues with my cluster and/or HPC?
Why is the MathWorks Service Host causing issues with my cluster and/or HPC?Why is the MathWorks Service Host causing issues with my cluster and/or HPC? Why is the MathWorks Service Host causing issues with my cluster and/or HPC? MATLAB Answers — New Questions
#desbordamiento! Error
Can you help me? I’ve already validated the formula and the information is well captured, but I still think it’s an error.
Can you help me? I’ve already validated the formula and the information is well captured, but I still think it’s an error. Read More
Windows Server 2025 Public Preview – Windows Update issue
Hi there,
Is Windows Update expected to work with the Windows Server 2025 Public Preview from Microsoft’s Evaluation Center?
I deployed the 26100.1.240331-1435.ge_release_SERVER_EVAL_x64FRE_en-us.iso image but can’t update through Windows Update. Similarly, the Windows Security app and Microsoft Edge browser won’t update.
I’m inquiring because post-installation, the Microsoft Evaluation Center advises updating Windows via Windows Updates.
Thanks,
AJ
Hi there, Is Windows Update expected to work with the Windows Server 2025 Public Preview from Microsoft’s Evaluation Center?I deployed the 26100.1.240331-1435.ge_release_SERVER_EVAL_x64FRE_en-us.iso image but can’t update through Windows Update. Similarly, the Windows Security app and Microsoft Edge browser won’t update. I’m inquiring because post-installation, the Microsoft Evaluation Center advises updating Windows via Windows Updates. Thanks,AJ Read More
Pivot Table Question
I have the following portion of a pivot table from some Excel data. I would like to take the Month sum value (which is 15 for Jul) and divide by the number of date entries (which is 13 for Jul). Essentially the average number of entries per entry day. Is there a way to create that calculation within the pivot table?
Jul151.153-Jul1 5-Jul1 7-Jul1 10-Jul2 11-Jul2 12-Jul1 18-Jul1 20-Jul1 21-Jul1 24-Jul1 25-Jul1 27-Jul1 31-Jul1
I have the following portion of a pivot table from some Excel data. I would like to take the Month sum value (which is 15 for Jul) and divide by the number of date entries (which is 13 for Jul). Essentially the average number of entries per entry day. Is there a way to create that calculation within the pivot table? Jul151.153-Jul1 5-Jul1 7-Jul1 10-Jul2 11-Jul2 12-Jul1 18-Jul1 20-Jul1 21-Jul1 24-Jul1 25-Jul1 27-Jul1 31-Jul1 Read More