I have a UWP app generated from Unity. I want to limit the availability of my app based on Memory, since it does not run well on less then 1gb. I found this MemoryDependency, but I am not able to apply it in the code of the package.appxmanifest, can somebody tell how this is done?
You were on the right Track. Below are the steps.
To validate your StoreManifest.xml, create a new xml document in Microsoft Visual Studio and add the following declaration:
http://schemas.microsoft.com/appx/2015/StoreManifest namespace
Below is the StoreManifest.xml for Devices with Min 1 GB
<?xml version="1.0" encoding="utf-8"?>
<StoreManifest xmlns="http://schemas.microsoft.com/appx/2015/StoreManifest">
<Dependencies>
<MemoryDependency MinForeground="300MB" />
</Dependencies>
</StoreManifest>
Below is the Table for Declaring MemoryDependency
For mobile devices, the value indicates the requirements for available memory. The equivalent requirements for installed memory on mobile devices are as follows:
300MB = device must have at least 1 GB of installed memory
750MB = device must have at least 2 GB of installed memory
1000MB = device must have at least 3 GB of installed memory
2000MB = device must have at least 4 GB of installed memory
For example, if you specify that your UWP app requires 300 MB to run properly, it will only be able to be installed on mobile devices with >1 GB of RAM or on desktop devices with >300 MB of RAM.
More Information and Configuration on how to do this is here
Related
I'm working on a moderately large query
MATCH path = ((s:User {UserId:"indexedKey"})-[r:HasAccess]-(t:User)) WHERE all(y IN rels(path) WHERE toInt(y.Importance) >= 3) RETURN path
Expected result ~3,000 nodes; unknown edges, probably >6,000. The browser errors out before returning results. When I limit the range (i.e.)
MATCH path = ((s:User {UserId:"indexedKey"})-[r:HasAccess*3]-(t:User)) WHERE all(y IN rels(path) WHERE toInt(y.Importance) >= 3) RETURN path*
it returns without issue.
Server: Neo4j 3.1.1 CE on a Ubuntu 16.04.1 LTS under Hyper-V on Windows 10. VM with 4 virtual cores, unlimited claim on Host; Assigned 7GB out of 11GB Max in VM. Neo4j Heap = 5G, and pagecache.size = 5G.
Client: Windows 10 with Chrome 64-bit and Firefox 64-bit, same behavior. Different host from the server.
The failure occurs after an indeterminate time (left to run overnight) i get Error from Chrome 64-bit. Watching the resources on the client side i see ~300 MB/s coming into the the browser, browser memory steadily increases. I've seen it hit 6 GB (Firefox 64-Bit). After a recent update Chrome 64-bit increases it's memory usage at a significantly slower rate.
Is this a bug in the neo4j javascript driver/neo4j browser or are there server/client configurations I can look at to resolve the issue?
Thanks in advance,
EDIT
A simple example of the query pattern. Once i can identify the A,B,C cluster and the D,E,F cluster I can interview C and D and determine if that relationship is business critical or can be disrupted. In production is seems that clusters are connected to many other clusters, making the query quickly very large.
EDIT - revised quires inline above
EDIT [Resolution] - I have built a php application that recursively performs small scope queries (graph aware driver) and composite the results in a json structure for visualization by d3. But the neo4j browser is more feature rich than my solution, so any suggestions for improvement of the query or infrastructure would be welcome.
I want to find the limit of my app's ram so that i can design my app properly.
Earlier in windows phone 8 there was a class named DeviceStatus which could provide me with this result but in windows phone 8.1 that class has been removed. So could anyone provide me with an alternative of this class for windows phone 8.1
The new class you're looking for is Windows.System.MemoryManager; in particular, the AppMemoryUsageLimit property.
This value can vary based on the amount of RAM the device has, and whether or not the process is a background task.
For 512MB RAM devices, the limit is 185MB.
For 1GB RAM devices, the limit is 390MB.
For 2GB RAM devices, the limit is 825MB.
You can't extend the memory limit.
I have a GTX Titan Z graphics card. It has twin GPUs with total memory of 12 GB (6GB + 6GB). When I use DeviceQuery application in Cuda Sample (V6.5) folder to see the specification, it shows two devices, each having total memory of 4 GB. Furthermore, in my C++ code I can only access to 4GB memory. On the other hand, when I run GPU-Z software, it shows two Titan Zs, each having 6GB memory. Could anyone explain what has caused this problem and how can be resolved?
The problem here was that the program was being compiled as a 32-bit application. With 32 bits the program is only able to address 4GB of memory. The CUDA call to check device specifications (cudaGetDeviceProperties) appears to recognize this fact, and only reports the 4GB you can actually use.
Compiling as a 64-bit application should resolve this problem.
In wp8, we have devicetotalmemory property. As MSDN says, it returns the physical RAM size of the device in bytes.
But when I tested it on my lumia 920 with 32Gb storage it returns 898Mb size.
My device is running wp8.1 developer preview.
Can you tell me what wrong with total memory property? Maybe I do something wrong, or there is
bug in wp8.1.
It returns device RAM size.looks like you have device with 1GB RAM.
Remark:
The value returned is less than the actual amount of device memory, but can be used to help determine memory consumption requirements.
What is the application memory usage limit of windows phone 8 application, I need memory limit for the three different devices available (like 720p, WXVGA etc)
The zen of WP8 memory caps has three aspects: default baseline (150MB+), extended memory (180MB+) and low-memory device opt-out (300MB+).
Baseline:
By default all apps (D3D, XAML and XNA) on WP8 have at least 150MB which is up from 90MB on WP7. The increase from 90MB to 150MB is done to accommodate the extra memory needed for more detailed visuals on HD displays.
Extended Memory Caps
Apps can also ask for additional memory by specifying ID_FUNCCAP_EXTEND_MEM. When asking for additional memory you're guaranteed at least 180MB on all devices. When asking for additional memory your app may actually get all the way up to 380MB memory on high-memory devices.
Low memory device opt-out
Apps can also opt-out of low-memory devices (512MB RAM) by specifying ID_REQ_MEMORY_300. That guaranteed your app will only run on high-memory devices (more then 1GB of RAM) and with at least 300MB of memory.
The way you should think about "high memory devices" is that it's just like having an optional sensor (Gyroscope, Compass, etc) or any other optional hardware (NFC, etc). Don't assume users have this extra memory unless you want to limit the distribution of your app considerably. Public statistics show that low-memory devices sell pretty well and you shouldn't disqualify your app from those devices unless it's an absolute must.
App memory limits for Windows Phone 8 (MSDN)